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两个框架。

              Java框架之Struts2(1)

二、Struts2搭建:

         1、导包:

                       Java框架之Struts2(1)

          2、创建Action类:

                            Java框架之Struts2(1)

         3、书写配置文件注册Action类:(放在struts.xml中,此配置文件放在src路劲下)

                          Java框架之Struts2(1)

         4、配置struts2入口filter到web.xml中:  

              Java框架之Struts2(1)

         5、访问: Java框架之Struts2(1)

三、struts2架构:

         1、架构及运行流程:

                         Java框架之Struts2(1)

           2、拦截器及过滤器的设计与简单应用:

                            Java框架之Struts2(1)

       3、aop思想的简单应用:

                      Java框架之Struts2(1)

                           Java框架之Struts2(1)

四、struts2配置详解:

          1、基本配置:

                    ①、package:

                                      Java框架之Struts2(1)

                       ②、action:

                                         Java框架之Struts2(1)

                        ③、result:

                                          Java框架之Struts2(1)

            2、通配符动态方法调用:

                       ①、Action的name使用通配符:

                                        Java框架之Struts2(1)

                        ②、method属性引用通配符配置的值:

                                        Java框架之Struts2(1)

                       ③、访问Action时指定通配符的值:

                                         Java框架之Struts2(1)

          3、引入其他struts配置:

                           Java框架之Struts2(1)

           4、默认配置总结:

                           Java框架之Struts2(1)

五、struts2中Action规则:

         1、Action创建方式:

                    ①、pojo:

                                    Java框架之Struts2(1)

                    ②、实现接口:

                                    Java框架之Struts2(1)

                    ③、继承类:

                                    Java框架之Struts2(1)

         2、Action中的方法规则:

                          Java框架之Struts2(1)