`
Candy_Code
  • 浏览: 14328 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

01--初识struts2以及myeclipse配置技巧

阅读更多

第一章 认识struts2

1.0 什么是struts2:
官网中对于struts是这样描述的:
Apache Struts 2 was originally known as WebWork 2. After working independently for several years, the WebWork and Struts communities joined forces to create Struts2.
原文大意为: Apache Struts 2即是之前大家所熟知的WebWork 2。在经历了几年的各自发展后,WebWork和Struts社区决定合二为一,就成了Struts 2。

struts 官方网站:http://struts.apache.org/
Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开。
因而struts2与struts的差别较大,不能错误的认为struts2是struts的升级版本。
目前最新版本为2.3.1.2。以下是该版本的完整包下载地址:
http://labs.mop.com/apache-mirror//struts/binaries/struts-2.3.1.2-all.zip

1.1 新建项目
①创建struts.xml ,放置于WEB-INF\classes目录下

<struts>
     <constant name="struts.devMode" value="true" />
	 	<package name="default" namespace="/" extends="struts-default">
        <action name="hello">
            <result>/hello.jsp
            </result>
        </action>
     </package>
</struts>


一般情况都从struts-default继承。因为在struts-default.xml对称为struts-default的package对于struts2的核心功能做了详尽的配置,我们从它继承可以免去很多繁琐的配置,并且可以使用struts-default中配置的所有功能。
②WEB-INF/lib中放入所需类库
在struts的lib目录下,拥有struts2定义的所有类库,一般我们并不会用到全部的类库,我们只需要其中的一部分,然而我们在开发之前又不能确定到底需要哪些包,方便起见,可以
将Struts-2.3.1.2\apps\struts2-blank\WEB-INF\lib下面的全部jar file拷到your app\WEB-INF\lib下面,这是基本的类库。
③配置web.xml
<filter>
    <filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
      <filter-name>struts2</filter-name>
      <url-pattern>/*</url-pattern> <!—过滤根目录下所有的action-->
 </filter-mapping>
关于web.xml的详细配置,请猛击:http://candy-code.iteye.com/blog/1442334

1.2 配置MyEclipse

a. 查看类库代码及文档 :
在MyEclipse中选中该jar文件,右键->property->java source attachment = …./struts2.1.2/src/core/src/main/java
Javadoc Location = …../struts2.1.2/docs/apidocs
b.  structs.xml 编辑时的自动提示
window—>preference—>XML catalog—>add
location = …./struts2.0/lib/struts2-core-2.1.6/struts2.0.dtd
key type = URI
key = http://struts.apache.org/dtds/struts-2.0.dtd
c.  struts.xml 开发模式

       
<constant name="struts.devMode" value="true" />


这样tomcat可以动态感知struts.xml的变化。这样我们只修改struts.xml的情况下就可以不用重新部署项目,但是对于java文件的更改,还是不敏感,需要重新部署。
d. 管理webapp
指定项目根目录,它是访问应用程序的入口。右击项目->property->myEclipse->Web
->Web Context-root
Web-root folder:项目中用于存放页面的根目录
1.3 struts工作原理
浏览器的请求交给服务器程序(如Tomcat)去处理,服务器程序会读取相应的webapp 的web.xml,web.xml对于filter的配置决定了,用户请求的所有请求都交给
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter(2.0.x至2.1.2版本是FilterDispatcher)去处理,然后请求会被过滤器链层层过滤,若请求成功,才能成功访问action,action返回一个字符串,struts2会根据这个返回值寻找相应的页面。


分享到:
评论
1 楼 thewebofnature 2013-09-18  
写的很好!

相关推荐

    Struts2入门教程(全新完整版)

    3.初识struts2配置文件 4 (1).web.xml文件 4 (2).struts.xml文件 4 (3).struts.properties(参default.properties) 4 (4)struts-default.xml 4 (5)其它配置文件 4 4.让MyEclipse提示xml信息 4 5.如何...

    学习JSP的Struts的第一步:登录界面

    **Struts与JSP结合学习:初识登录界面** 在Web开发中,Struts框架是一个广泛应用的MVC(Model-View-Controller)架构,它帮助开发者有效地组织和管理应用程序的结构。而JSP(JavaServer Pages)则是一种用于创建...

    JAVA程序开发大全---上半部分

    本书系统全面地介绍了Java中的各项主流技术,以及基于这些技术的商业化应用程序的开发技巧,在讲解过程中以目前最为流行的开发工具MyEclipse为载体,全面系统地介绍了如何在MyEclipse中开发基于Struts、Hibernate、...

Global site tag (gtag.js) - Google Analytics