### Struts2.0 学习资料核心知识点详解 #### 一、Struts2简介与特点 Struts2是基于Struts1发展而来的一个MVC(Model-View-Controller)框架,它继承了Struts1的优点,并在此基础上进行了大量的改进和优化。Struts2框架在设计上更加灵活和强大,其主要特性包括但不限于以下几点: 1. **统一性**:Struts2结合了Struts1和WebWork的优点,实现了两者的完美融合。 2. **灵活性**:相较于Struts1,Struts2在处理Action的方式上更为灵活。Struts1中的Action类必须继承自特定的基类,而Struts2则允许使用普通的Java对象(POJO)作为Action。 3. **依赖注入**:Struts2支持依赖注入,这使得开发者可以更容易地管理应用程序的组件之间的依赖关系。 4. **拦截器机制**:Struts2提供了一种强大的拦截器机制,它可以对请求进行预处理和后处理,从而实现如权限控制、数据校验等功能。 5. **国际化支持**:Struts2提供了很好的国际化支持,可以轻松实现多语言的应用程序。 #### 二、Struts2与Struts1的主要区别 1. **Action处理方式**: - **Struts1**:Action类必须继承自特定的基类,如`Action`或`DispatchAction`,并且需要实现特定的方法(如`execute`)来处理请求。 - **Struts2**:Action可以是任意的Java对象(即POJO),这极大地简化了开发过程,提高了代码的可读性和可维护性。 2. **表单处理**: - **Struts1**:使用`ActionForm`对象来封装表单数据,需要为每个表单创建对应的`ActionForm`。 - **Struts2**:虽然也支持类似`ActionForm`的功能(通过`ModelDriven`接口),但更推荐直接使用POJO来处理表单数据,这样更加灵活且易于管理。 3. **依赖注入**: - **Struts1**:依赖注入的支持较弱。 - **Struts2**:内置了依赖注入机制,可以通过配置文件或注解的方式方便地实现依赖注入。 4. **拦截器**: - **Struts1**:没有内置的拦截器机制。 - **Struts2**:提供了强大的拦截器机制,可以对请求进行预处理和后处理。 5. **视图技术**: - **Struts1**:主要使用JSP作为视图技术。 - **Struts2**:除了支持JSP外,还支持FreeMarker、Velocity等多种视图技术。 #### 三、Struts2的关键组件和技术 1. **Action**:Struts2中的Action可以是普通的Java对象,它通常负责接收请求参数、处理业务逻辑并返回相应的结果。 2. **配置文件**:Struts2使用XML配置文件来定义Action及其相关的拦截器、结果等。 3. **拦截器**:拦截器是Struts2中非常重要的概念,它们可以在请求到达Action之前或之后执行,用于实现各种跨切关注点的功能,如日志记录、事务管理等。 4. **OGNL(Object-Graph Navigation Language)**:这是一种强大的表达式语言,用于获取或设置对象属性,Struts2利用OGNL来解析请求参数并与Action中的字段进行映射。 5. **标签库**:Struts2提供了一系列自定义标签,这些标签可以简化前端页面的编写,提高开发效率。 6. **国际化**:Struts2提供了丰富的国际化支持,可以轻松实现多语言应用。 Struts2不仅在功能上进行了全面升级,在设计理念上也更加符合现代软件开发的需求。对于那些希望构建高性能、可扩展的Web应用的开发者来说,Struts2无疑是一个值得深入学习的强大工具。
- 粉丝: 0
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- MATLAB 图像处理:自动检测黑白像素比例的多功能代码(支持灰度和二值图像)
- windows平台下终端工具-tabby
- STM32和ucosii系统温度监控系统keil5工程
- HIVE-14706.01.patch
- C# WInForm IrisSkin2皮肤控件
- svn cleanup 失败怎么办
- Spring Boot集成Spring Security,HTTP请求授权配置:包含匿名访问、允许访问、禁止访问配置
- 易语言-画曲线模块及应用例程
- 电子元件行业知名厂商官网(TI/NXP/ST/Infineon/ADI/Microchip/Qualcomm/Diodes/Panasonic/TDK/TE/Vishay/Molex等)数据样例
- Cytoscape-3-10-0-windows-64bit.exe