struts2是一款轻量级的MVC web应用框架,可作为控制器建立模型与视图的数据交互,提供统一的标准,重用代码大大增加,降低各个层之间的耦合度,带来更好的扩展性,需要的朋友速速下载吧!
软件特点
1)重用代码大大增加,软件生产效率和质量也得到了提高
(2)使用框架开发,它提供统一的标准,大大降低了我们的后期维护。
struts2工作流程
工作流程:
(1)客户端浏览器发送HTTP请求到Web应用
(2)Web容器将请求传递到标准ActionContextCleanUp过滤器以消除属性,而不让后续过滤器清楚,以延长Action中属性(包括自定义属性)的生命周期。
(3)再经过如stimesh等其他过滤器后,请求传递给StrutsPrepareAndExecuteFilter核心控制器
(4)StrutsPrepareAndExecuteFilter调用ActionMapper(Action映射器)确定调用哪个Action,再将控制权转移给ActionProxy代理
(5)ActionProxy代理调用配置管理器ConfigurationManager从配置文件struts.xml中读取配置信息,然后创建ActionInvocation对象
(6)ActionInvocation在调用拦截器链中的拦截器后再调用Action,根据Action返回的结果字符串查找对应的Result
(7)Result调用视图模板,再以相反的顺序执行拦截器链,返回HTTP响应
(8)HTTP响应以相反的顺序返回给核心控制器StrutsPrepareAndExecuteFilter以及其他web.xml中定义的过滤器,最终返回给客户端。
struts2使用方法
我用的是struts2.2.1.1-all.zip(不管用struts2的哪个版本,道理都一样,找对应的包就行了)
例如你建一Web Project,名为Struts2 导入项目所需要的jar包,放入/Struts2/WebRoot/WEB-INF/lib下面
方法一:
在struts2存放目录(以我的举例说明)
F:JavaWeb教程ssh-jarstruts-2.2.1.1-allstruts-2.2.1.1lib下面找到以下包
commons-fileupload-1.2.1.jar//文件上传时用的,为了以后用到,最好加入
commons-io-1.3.2.jar//同上
commons-logging-1.0.4.jar
freemarker-2.3.16.jar
javassist-3.7.ga.jar
ognl-3.0.jar
struts2-core-2.2.1.1.jar
xwork-core-2.2.1.1.jar
共8个包,将其复制到/Struts2/WebRoot/WEB-INF/lib下面
方法二:(不用复制,导入法)
(1).右击项目名称Struts2-->Build Path-->Configure Build Path...-->打开一对话框
(2).选择左边的"Java Build Path"选项-->选择Libraries选项卡-->Add External JARs-->去寻找 F:JavaWeb教程ssh-jarstruts-2.2.1.1-allstruts-2.2.1.1lib下面的指定的jar包导入即可
Struts2配置详解
1. Struts2配置文件加载顺序
init_DefaultProperties()加载的是 default.properties 文件
位置:struts2-core.jar 包 org.apache.struts2 包下
作用:主要是声明了 struts2 框架的常量
init_TraditionXmlConfigurations()加载的是一批配置文件
Struts-default.xml
位置:struts2-corl.jar
作用:声明了 interceptor result bean
Struts-plugin.xml
位置:在 struts2 的插件包中
作用:主要用于插件的配置声明
Struts.xml
位置:在我们自己的工程中
作用:用于我们自己工程使用 struts2 框架的配置
init_LegacyStrutsProperties()加载的是自定义的struts.properties
位置:都是在自己工程的 src 下
作用:定制常量
init_CustomConfigurationProviders()自定义配置提供
init_FilterInitParmeters()加载的是 web.xml 配置文件
主要是加载 struts2 框架在 web.xml 文件中的相关配置.
init_AliasStandardObjects() bean 相关配置
重点掌握:
1.Default.properties
2.Struts-default.xml
3.Struts-plugin.xml
4.Struts.xml
5.web.xml
2.struts.xml件配置介绍
(1) package配置(strust.xml只存在一个package相当于一个struts的项目)
name属性作用:定义一个包的名称,它必须唯一。
namespace属性作用:主要是与action标签的name属性联合使用来确定一个 action的访问路径。
extends属性作用:指定继承自哪个包。一般值是struts-default,struts-default包是 在struts-default.xml文件中声明的。
abstruct属性它代表当前包是一个抽象的,主要是用于被继承。
(2) action配置(对应相应的以action结尾的类,一个package可以有多个action)
name属性作用:主要是与package的namespace联合使用来确定action的访问路径。
class属性作用:用于指示当前的action类。
method属性作用:用于指示当前的action类中的哪个方法执行。
(3) result配置(用于显示视图的结果)
name属性作用是与action类的method方法的返回值进行匹配,来确定跳转路径。
type属性作用是用于指定跳转方式。
软件评论 您的评论需要经过审核才能显示
网友评论