"为Action的属性注入值-struts的课件"
Struts2是一个基于MVC设计模式的Java Web框架,它是在WebWork2的基础上发展起来的。与它的前辈Struts1相比,Struts2在设计理念上有显著的区别,比如它采用了无侵入式设计,降低了对Servlet API的依赖,使得应用程序可以独立于框架运行。此外,Struts2引入了拦截器机制,允许开发者实现AOP(面向切面编程)功能,如权限控制。它还提供了类型转换器,简化了不同类型参数的处理,并且支持多种视图技术,如JSP、FreeMarker、Velocity等。
在为Action的属性注入值方面,Struts2提供了一种便捷的方式。在Action类中,你需要定义一个私有的成员变量,例如`savePath`,并为其提供getter和setter方法。然后,在Struts2的配置文件中,你可以使用`<param>`节点来为这个属性注入值。例如:
```xml
<package name="itcast" namespace="/test" extends="struts-default">
<action name="helloworld" class="cn.itcast.action.HelloWorldAction" >
<param name="savePath">/images</param>
<result name="success">/WEB-INF/page/hello.jsp</result>
</action>
</package>
```
这段配置会将字符串`"/images"`注入到`HelloWorldAction`的`savePath`属性中,当Action被实例化并执行时,这个值就可以在业务逻辑中使用。
Struts2的搭建过程通常包括以下几个步骤:
1. 获取必要的jar文件:这包括Struts2的核心库和其他依赖库,可以从Apache Struts官方网站下载。
2. 编写Struts2配置文件:这是`struts.xml`,在这个文件中定义Action、结果页面以及其他框架配置。
3. 在`web.xml`中配置Struts2的初始化参数:添加过滤器以启动Struts2框架,确保所有的HTTP请求都能被Struts2处理。
Struts2的其他优势还包括其强大的输入验证机制,可以在方法级别进行数据校验,提高了开发效率。此外,它还提供了多级别的国际化资源管理,包括全局、包和Action范围内的资源文件,方便了多语言应用的开发。
Struts2作为一款成熟的Java Web框架,因其灵活性、可扩展性和丰富的特性,深受开发者喜爱。它的出现不仅弥补了Struts1的一些不足,也为开发者带来了更高效、更优雅的编程体验。