最近下载了struts2.0.6,可真大,解压后大约150M,仔细看了一下,跑了其自带几个demo,并看了一下代码,可以说基本和webwork2一样的,核心基本没改,感觉就修改了包名,说是struts和webwork合并,个人觉得是webwork利用struts这个招牌寻找市场,struts利用webwork2获得重生,因为在struts2基本看不到struts1的影子了。可惜,目前没有关于struts2的书籍,感觉自带的文档排版比较乱(就和webwork2的一样),很难寻找想要的信息,不过可以看webwork in action, 其实只要看了webwork in action的前五章,就可以理解struts2的架构了。
struts2对webwork的改进之处:
1.webwork.properties文件中变量现在可以配置在下列文件(这是struts2自带文档中的说的):
struts-default.xml
struts-plugin.xml(在每个plugin的jar包中)
struts.xml(用constant元素)
struts.properties
(没有默认文件,可选,与webwork.properties文件相似,每个项目可以有这个文件)
web.xml
下面是struts2自带文档中的示例
- Constant Example (struts.xml)
- <struts>
- <constant name="struts.devMode" value="true" />
- ...
- </struts>Constant Example (struts.properties)
- struts.devMode = trueConstant Example (web.xml)
- <web-app id="WebApp_9" version="2.4"
- xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
- <filter>
- <filter-name>struts</filter-name>
- <filter-class>org.apache.struts2.dispatcher.FilterDispatcher
- </filter-class>
- <init-param>
- <param-name>struts.devMode</param-name>
- <param-value>true</param-value>
- </init-param>
- </filter>
- ...
- </web-app>
2.加入了通配符的支持,这是在ww2中没有的,如下:
- <action name="*" >
/tutorial/{1}.jsp - < SPAN>action>
【编辑推荐】