zoukankan      html  css  js  c++  java
  • 四、Struts2

    一、使用struts2的原因

      1. 侵入性框架:开发程序的同时,引进的框架。如果在使用该框架时,要继承框架提供的实体类或实现框架提供的接口,这就说明该框架是侵入式框架,因为程序本身对框架有了依赖,当去除框架时,程序也就无法运行,这个也就是我们说的重量级框架,如struts1中,action和actionForm必须要继承Action和ActionForm一样。相反的非侵入式框架是轻量级框架的重要特点,如hibernate和spring,当我们想去掉hibernate和Spring框架时,只需修改相应的程序,程序仍可运行。

      2. 耦合性(Coupling):也叫耦合度,是对模块间关联程度的度量。耦合的强弱取决与模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差。

      3. 综上所述:Struts1框架而言,由于与JSP/Servlet耦合非常紧密,因而导致了一些严重的问题:

        ①:Struts1支持的表现层技术单一。(Struts1出现的年代比较早,当时的技术单一)

        ②:Struts1与Servlet API的严重耦合,使应用难于测试。

        ③:Struts1代码严重依赖于Struts1 API,属于侵入性框架。

    二、Struts2请求过程源码分析

      参考:http://www.cnblogs.com/liuling/p/2013-8-10-01.html

    三、struts 事例(struts2-core.2.5.10.1)

      1. 导入基础包:

        

      2. 配置web.xml

       

        早期 webwork:com.opensymphony.webwork.dispatcher.ServletDispatcher
        现在 webwork:com.opensymphony.webwork.dispatcher.FilterDispatcher
        早期 struts2:com.opensymphony.webwork.dispatcher.FilterDispatcher
        2.5 之前:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
        2.5 开始:org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter

      3. 创建struts.xml

      

      4. 创建login.jsp

      

      5. 创建指定action

        

  • 相关阅读:
    zbb20181207 springboot @ConfigurationProperties使用
    zbb20181206 logback,lombok 默认日志logback配置解析
    Spring Boot (8) 全局异常处理
    Spring Boot (7) JdbcTemplate访问数据库
    Spring Boot (6) Spring Data JPA
    Spring Boot (4) 静态页面和Thymeleaf模板
    Spring Boot (3) 热部署devtools
    Spring Boot (2) Restful风格接口
    Spring Boot (1) 构建第一个Spring Boot工程
    idea使用maven搭建ssm框架实现登陆商品增删改查
  • 原文地址:https://www.cnblogs.com/MissRabbit/p/6559943.html
Copyright © 2011-2022 走看看