一、Struts2介绍
Struts2是在WebWork2基础发展而来的。和Struts1一样, Struts2也属于MVC的web框架。不过有一点大家需要注意的是:Struts2和Struts1有很大区别,实现机制完全不一样。Struts2开始支持基于Annotation的配置。
那么既然有了Struts1,为何还要推出Struts2?
Struts2总体的变化:一、Struts2模式上的变动;1、Action从singleton bean改为了per request的prototype bean,之前的Struts1为了线程安全,action里面没有任何成员变量,在一个处理函数输入输出都靠request,response参数搞定;2、将很多处理透明的分解到了Interceptor Chain中,因此,Struts2中Action在MVC里的位置,从Controller转为了Model,而Controller的角色则由Struts2亲自担当。二、零配置文件;1、能自动扫描所有Action类(默认为struts,action package下的所有子package,Springside在struts.xml中重新定义扫描web package下的所有子Package);2、所有扫到的Action,Convention猜测其NamePace;3、jsp名同样以默认规则定义;4、如果有特殊的结果指向,在Action处用Result配置;5、如有package级的配置,仍在struts.xml中定义package;三、取得Request和Response。
struts2概述
struts2环境搭建(第一个struts2的应用程序)
struts.xml文件配置详解
struts2请求的URL的搜索路径的顺序概述
struts2工作原理概述
struts2指定多个配置文件
struts2动态方法调用
使用通配符定义action
二、搭建Struts2开发环境
1、 struts2开发依赖的9个jar包
2、Struts2默认的配置文件struts.xml ,创建在src目录下,该文件的配置模版如下:
3、Struts2在web中的启动配置
三、案例-----Helloworld
运行结果:
四、动态方法调用
<constant name="struts.enable.DynamicMethodInvocation" value="true"/>
运行结果:
五、通配符
<action name=“*/*” class=“com.ambow.struts2.action.{1}Action” method=“{2}”></action>