第一章 认识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会根据这个返回值寻找相应的页面。
分享到:
相关推荐
一个struts2+myeclipse的配置小例,希望对struts2初学者有所帮助。
更新发布].myeclipse-10.0-offline-installer-windows.part03 myeclipse.10.0.更新发布].myeclipse-10.0-offline-installer-windows.part03 myeclipse.10.0.更新发布].myeclipse-10.0-offline-installer-windows....
此为MyEclipse下Struts2的配置使用文档,附件包括配置步骤文档及源码,文档为本人学习struts2配置一步一步所写,完全为个人对struts2的学习理解,如有不正确的地方,请留言批评指正,谢谢!附件包含项目源码,为本人...
myeclipse 插件热部署 jrebel6.5 ...-Drebel.struts2-plugin-----热部署struts2相关jar -Drebel.hibernate_plugin---热部署hibernate相关jar -Drebel.ibatis-plugin--------热部署ibatis相关的jar
jeecg-framework-3.4.3GA-myeclipse非maven版本.zipjeecg-framework-3.4.3GA-myeclipse非maven版本.zipjeecg-framework-3.4.3GA-myeclipse非maven版本.zipjeecg-framework-3.4.3GA-myeclipse非maven版本.zipjeecg-...
MYECLIPSE + STRUTS2 + SPRING4 + HIBERNATE4 + STRUCTS2S+OGNL + MYSQL_5.7.12
这个资源对刚想学习struts2的新手来说,是很有帮助的。解压后直接导入到Myeclipse项目工程就可以了。启动tomcat。就可以了
myeclipse开发struts实例------>struts在Myeclipse的使用
Struts2实战 MyEclipse PPT教程
入门级,初学者必备 入门级,初学者必备 入门级,初学者必备 入门级,初学者必备
myeclipse-2017-ci-7-offline-installer-windows和myeclipse-2017-ci-10-offline-installer-windows 百度云链接、密码,永久有效
数据库原理课程设计-图书管理系统源代码(Myeclipse+SQL2005)
myeclipse导出javaee web项目失败---(10.7版本的myeclipse) 一般来说导出时报错,然后myeclipse会关闭并且弹出一个错误页面 解决myeclipse导出javaee项目失败导致的问题,一般来说...2:重启myeclipse 正常应该可以了
欢迎下载欢迎下载欢迎下载欢迎下载欢迎下载欢迎下载欢迎下载欢迎下载欢迎下载欢迎下载
myeclipse-8.0M1-win32 的下载地址与注册码
Myeclipse-2014-GA-破解文件.rar使用了几个还是这个有用,并且修复了用其他破解软件破解导致的打不来的问题。
Myeclipse开发struts+hibernate+spring新手入门---环境配置----项目开发示例 Myeclipse开发struts+hibernate+spring小记 开发前准备工作: 1、下载eclipse3.1版本 下载地址: 2、下载Myeclipse插件 下载地址: 3...
myeclipse10安装包,可用来编写JSP,html等,我自己的电脑是windows7系统64位,自行安装jar包,tomcat等。tomcat支持5.0-7.0
myeclipse和struts配置使用
struts2国际化MyEclipse开发struts2国际化MyEclipse开发童叟无欺