zoukankan      html  css  js  c++  java
  • Java框架中Struts和Struts2框架的区别

    struts1 struts2 的区别:
    1.都是 MVC WEB 框架,
    2 struts1的老牌框架,应用很广泛,有很好的群众基础,使用它开发风险很小,成本更低!
    struts2虽然基于这个框架,但是应用群众并多,相对不成熟,未知的风险和变化很多,开发
    人员相对不好招,使用它开发项目的风险系数更大,用人成本更高!
    3.struts2毕竟是站在前辈的基础设计出来,它会改善和完善 struts1中的一些缺陷, struts1
    中一些悬而未决问题在 struts2得到了解决。
    4.struts1的前端控制器是一个 Servlet,名称为 ActionServletstruts2的前端控制器是一个
    filter,在 struts2.0中叫 FilterDispatcher,在 struts2.1中叫 StrutsPrepareAndExecuteFilter
    5.struts1action 需要继承 Action 类, struts2action 可以不继承任何类; struts1对同一
    个路径的所有请求共享一个 Action 实例, struts2对同一个路径的每个请求分别使用一个独
    Action 实例对象,所有对于 struts2Action 不用考虑线程安全问题。
    6.struts1中使用 formbean 封装请求参数,在 struts2中直接使用 action 的属性来封装请
    求参数。
    7.struts1中的多个业务方法放在一个 Action 中时(即继承 DispatchAction 时),要么都校验,
    要么都不校验;对于 struts2,可以指定只对某个方法进行校验,当一个 Action 继承了
    ActionSupport 且在这个类中只编写了 validateXxx()方法,那么则只对 Xxx()方法进行校验。
    (一个请求来了的执行流程进行分析, struts2是自动支持分模块开发,并可以不同模块设置
    不同的 url 前缀,这是通过 package namespace 来实现的; struts2是支持多种类型的视
    图; struts2的视图地址可以是动态的,即视图的名称是支持变量方式的,举例,论坛发帖失
    败后回来还要传递 boardid。视图内容显示方面:它的标签用 ognl,要 el 强大很多,在国际
    化方面支持分模块管理,两个模块用到同样的 key,对应不同的消息;)
    Struts1不同, Struts2对用户的每一次请求都会创建一个 Action,所以 Struts2中的 Action
    是线程安全的。
    给我印象最深刻的是: struts 配置文件中的 redirect 视图的 url 不能接受参数,而 struts2
    置文件中的 redirect 视图可以接受参数。

  • 相关阅读:
    mybatis中使用in查询时的注意事项
    单利模式
    jquery编写插件的方法
    python使用sendmail在linux下发送邮件
    python获取命令行输入参数列表
    互联网的实名与匿名
    Python切分字符串
    2017年3月15日留言 ——关于Java卡Applet系列csdn博文
    linux设置定时任务
    经典面试题:用户反映你开发的网站访问很慢可能会是什么原因
  • 原文地址:https://www.cnblogs.com/ncl-960301-success/p/7631586.html
Copyright © 2011-2022 走看看