Unmi的Struts2学习笔记(三)

连续几日熬夜,以致左胸又起闷痛感,何来如此辛苦?不由自忖,人生至今, 印象中从来就没有过安逸与幸福感。常要回避刺疼。

1. WebWork 的核心控制器是 ServletDispatcher,映射到 *.action 的 即可。在 WebWork 与 Struts2 的 struts.xml 和 struts.properties 相对应的分别是 xwork.xml 和 webwork.properties,文件 内容几乎一样,只几个关键字的差异。

2. Struts2的 struts.xml 中 的 name 属性相当于 struts1 的 的 path 属性,但在这里不需要以 “/” 开始。

3. Action 中使用业务逻辑组件实例时,通常不直接 New,而会通过工厂方法 或 IOC 容器。虽然 WebWork 有 IOC 容器,但 Struts2 通常会使用 Spring 的 IOC。

4. 可把 struts.xml 拆成多个文件,如 struts-part1.xml、struts- part2.xml … 等,然后在 struts.xml 中逐个 、 … 即可。看 看 struts2-core-x.x.x.jar 中的 struts-default.xml 为你内建了多少东西吧 。

5. Struts2 的官方说是它要求在支持 Servlet2.4/JSP2.0 的容器中运行,不 过我仍然把那个简单的例子(web.xml 中用 web-app_2_3.dtd) 放到 Tomcat 4.1.30(支持到 Servlet2.3/JSP1.2) 下运行了一番,能正常工作,不知可能产生 的问题有哪些。

6. Struts2 还提供一种类似 Eclipse 那种可插拔的方式来安装插件,看到下 载的 Struts2 的 lib 目录下有好多 struts2-xxx-plugin.jar,这些包中都有一 个 struts-plugin.xml(就是一个 struts.xml 配置文件),当把 struts2-xxx- plugin.jar 拷入到 WEB-INF/lib 下,这个 struts-plugin.xml 就会自动被加载 。你也可以像这样做自己的插件包。struts.properties 中属性 struts.configuration.files=struts-default.xml,struts- plugin.xml,struts.xml。

7. struts.properties 中本人认为比较重要的属性 struts.action.extension、struts.serve.static.browserCache、 struts.enable.SlashesInActionNames、struts.devMode、struts.i18n.reload 、struts.configuration.xml.reload、struts.custom.i18n.resources、 struts.i18n.encoding。好多属性值都支持逗号分隔的多个值。默认的属性配置 在 default.properties。

8. 默认情况,*.action 请求交给 Struts2 处理,你也可以改成其他扩展名 ,只要改 struts.properties 中的 struts.action.extension 属性值,如 struts.action.extension=unmi,action,则*.unmi和*.action都会被 Struts2 处理了。

9. Struts2 比起 Struts1 来在开发时不仅改了 struts.xml 不用重启应用, 就连改了国际化资源文件都可以不需要重启应用。设置 struts.i18n.reload = true 即可。

10. Struts2 提供了两种方式来管理 Struts2 属性,既可以写在 struts.properties,也可以写在 struts.xml 中配置为 constant 元素,如 。相信大多数人 还是倾向于写在 struts.properties 中。

获致幸福的不二法门是珍视你所拥有的遗忘你所没有的。

Unmi的Struts2学习笔记(三)

相关文章:

你感兴趣的文章:

标签云: