Java框架之Struts2(1)
一、Struts2简介:(部分来自百度百科)
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。
因为Struts1的缺陷(线程不安全,有些功能无法完成),WebWork出现修复了这种缺陷,所以找到Struts1的开发团队合作,一个需要技术,一个需要推广,一拍即合,Struts2的核心包有2套,一套是Struts本身的,一套是WebWork的。
对于Struts1框架而言,由于与JSP/Servlet耦合非常紧密,因而导致了一些严重的问题。首先,Struts1支持的表现层技术单一。由于Struts1出现的年代比较早,那个时候没有FreeMarker、Velocity等技术,因此它不可能与这些视图层的模版技术进行整合。其次,Struts1与Servlet API的严重耦合,使应用难于测试。最后,Struts1代码严重依赖于Struts1
API,属于侵入性框架。
Struts已经分化成了两个框架:第一个是在传统的Struts1的基础上,融合了另外的一个优秀的Web框架WebWork的Struts2。Struts 2虽然是在Struts1的基础上发展起来的,但是实质上是以WebWork为核心的。Struts2为传统的Struts1注入了WebWork的先进的设计理念,统一了Struts1和WebWork两个框架。
二、Struts2搭建:
1、导包:
2、创建Action类:
3、书写配置文件注册Action类:(放在struts.xml中,此配置文件放在src路劲下)
4、配置struts2入口filter到web.xml中:
5、访问:
三、struts2架构:
1、架构及运行流程:
2、拦截器及过滤器的设计与简单应用:
3、aop思想的简单应用:
四、struts2配置详解:
1、基本配置:
①、package:
②、action:
③、result:
2、通配符动态方法调用:
①、Action的name使用通配符:
②、method属性引用通配符配置的值:
③、访问Action时指定通配符的值:
3、引入其他struts配置:
4、默认配置总结:
五、struts2中Action规则:
1、Action创建方式:
①、pojo:
②、实现接口:
③、继承类:
2、Action中的方法规则: