Struts2配置详解与Struts1对比

需积分: 35 10 下载量 50 浏览量 更新于2024-07-13 收藏 2.34MB PPT 举报
"这篇资源是关于Struts2.0框架的常见配置介绍,主要涵盖了Struts2中的核心常量配置,以及对Struts1.0的简要回顾和其缺点的说明。" 在Struts2框架中,常量配置是非常关键的一部分,它们直接影响着框架的行为。以下是文件中提到的一些重要常量及其作用: 1. `struts.i18n.encoding`: 这个常量用于指定默认的字符编码集,设置为"UTF-8"确保在处理HttpServletRequest时以及FreeMarker和Velocity模板引擎的输出时使用UTF-8编码,防止乱码问题。 2. `struts.action.extension`: 该常量定义了哪些请求后缀会被Struts2处理。默认值是"action",意味着所有以".action"结尾的请求将由Struts2处理。如果需要处理其他后缀,可以通过逗号分隔来添加。 3. `struts.serve.static.browserCache`: 这个常量控制是否允许浏览器缓存静态内容。在生产环境中,设置为"true"是常见的做法,但在开发阶段,为了确保每次都能获取最新的静态资源,最好将其设为"false"。 4. `struts.configuration.xml.reload`: 这个常量决定当Struts的配置文件(struts.xml或struts-default.xml)更改时,框架是否自动重新加载。在开发阶段,设置为"true"有助于快速看到配置更改的效果,而在生产环境通常设为"false"以提高性能。 5. `struts.devMode`: 开发模式常量,设为"true"时,Struts2会提供更详细的错误信息,这对于调试非常有帮助。 Struts1.0是一个早期的MVC框架,它的核心组件包括ActionForm和Action。页面数据被封装到ActionForm对象中,然后根据请求路径在Struts-config.xml配置文件中找到对应的Action进行调用。ActionMapping负责查找正确的JSP页面并进行转发。然而,Struts1.0存在一些缺点,如仅支持JSP作为表现层技术,不支持FreeMarker或Velocity等更现代的技术,且与Servlet API高度耦合,这导致测试和维护变得困难。 总结来说,Struts2通过常量配置提供了更多的灵活性,如自定义请求后缀和编码方式,同时通过改进的配置机制和更友好的开发模式,解决了Struts1的部分问题。对于开发者来说,理解和熟练使用这些常量配置是实现高效Struts2应用的关键。