今天看了一天的Struts 2的资料文档,对Struts 2 简化了部署与减少代码量等更多优点,非常有兴趣去了解,可能的话,可以推广起来的。
读完官方自带的showcase的主配置和主代码框架,依稀的感觉到单论Struts2+Spring2+Hibernate3.2而言,还是能够把老经验顺手沾来直接使用的,就是说可以做到简单的升级到 2.0版本来。但是我们大量采用的tiles部份,目前我了解的较少,单从配置上来说,就已经发生了一些改变,其他文件方面倒是没有什么改变。
这是原Struts1在struts.xml文件当中配置的:tiles相关的配置部份:
xml 代码
- <plug-in className="org.apache.struts.tiles.TilesPlugin">
- <set-property property="definitions-config"
- value="/WEB-INF/config/tiles-defs.xml" />
- <set-property property="definitions-parser-validate"
- value="true" />
- <set-property property="moduleAware" value="true" />
- </plug-in>
在struts2当中明显不再采用struts1著名的plugin技术了,直接在web.xml中多了这样的配置:
xml 代码
- <listener>
- <listener-class>
- org.apache.struts2.tiles.StrutsTilesListener
- </listener-class>
- </listener>
然后直接就配置tiles.xml文件,如下:
xml 代码
- <!DOCTYPE tiles-definitions PUBLIC
- "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
- "http://struts.apache.org/dtds/tiles-config_2_0.dtd">
-
- <tiles-definitions>
-
- <definition name="showcase.index" template="/tiles/layout.jsp">
- <put-attribute name="title" value="Tiles Showcase"/>
- <put-attribute name="header" value="/tiles/header.jsp"/>
- <put-attribute name="body" value="/tiles/body.jsp"/>
- </definition>
-
- <definition name="showcase.freemarker" template="/tiles/layout.jsp">
- <put-attribute name="title" value="Tiles/Freemarker Showcase"/>
- <put-attribute name="header" value="/tiles/header.jsp"/>
- <put-attribute name="body" value="/tiles/body.ftl"/>
- </definition>
-
- </tiles-definitions>
目前看起来,struts2使tiles的应用更加简化和快捷了。单论tiles2而言,还是比较复杂用的,但是struts简化他的部署了。
以下是在struts2中必须有的与tiels2相关的文件,考贝到项目的lib目录就OK了。
struts2-tiles-plugin.jar、tiles-api-2.0.4.jar、tiles-core-2.0.4.jar、tiles-jsp-2.04.jar
后三个文件,从tiles.apache.org下载tiles工程。
过段时间,我详细写出一些较完整的应用例子。