温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Struts和Struts2的区别有哪些

发布时间:2022-09-29 11:20:13 来源:亿速云 阅读:76 作者:iii 栏目:开发技术

这篇文章主要介绍了Struts和Struts2的区别有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Struts和Struts2的区别有哪些文章都会有所收获,下面我们一起来看看吧。

1.前置控制器

strut 1.x – 使用的前端控制器是一个称为 ActionServlet 的 servlet

struts 2.x – 一个名为 FilterDispatcher 的过滤器被用作前端控制器。

您可以查看文章How Struts 2 Works以更好地了解 struts 2 的工作原理。

2.ActionForms

strut 1.x – ActonForms 用于 Struts 1。这些类映射到 jsp 表单。Action 类使用这些 ActonForms 中的数据来填充数据传输对象。

struts 2.x – 不使用 Acton 表单。jsp形式直接映射到POJO类,无需创建DTO,类数减少,维护量少。

3.验证

strut 1.x – 验证可以在 Form Bean 的 validate 方法中完成。

struts 2.x – 没有 Form Bean,因此可以将验证代码放在 Action 类中,也可以使用验证器框架。

4.表达语言

strut 1.x – Jstl(Java Standard Tag Library) 用于表达语言。

struts 2.x – 也使用 OGNL(Object Graphic Notation Language)作为表达语言,它比 JSTL 更强大。但是struts 2.x 也可以使用JSTL。

5.配置文件

strut 1.x – 使用的配置文件是 struts-config.xml,它可能是“anyname.xml”,并放在 web-inf 文件夹中。

struts 2.x - 配置文件的名称是 struts.xml,位于 web-inf/classes 文件夹中。也可以使用多个配置文件。

6.动作类

strut 1.x – Action 类必须扩展基本抽象类,因此不能扩展任何其他类。

struts 2.x – Action 类更加灵活,可以通过实现 Action 接口、扩展 ActionSupport 类或仅具有 execute() 方法的 POJO 类来创建。

7.线程安全

strut 1.x – 动作类是单例的,不是线程安全的。只有一个类的实例用于处理对 Action 的所有请求。

struts 2.x – 为每个请求实例化操作对象,因此不存在线程安全问题。

8.类型转换

strut 1.x – ActionForm 中的属性通常是字符串。在 struts 1 中使用 Commons-Beanutils 进行类型转换。

struts 2.x – OGNL 用于类型转换。Struts 2 包括通用对象类型和原始数据类型的转换器。

9.Servlet 依赖

strut 1.x – 动作类执行方法具有 HttpServletRequest 和 HttpServletResponse 类型的参数。所以 struts 1.x 的动作依赖于 servlet api。

struts 2.x – struts 2 中的 Action 类没有 servlet 依赖,因为它的 execute() 方法不接受任何参数。但是如果需要 Struts 2 Actions 仍然可以访问请求和响应。

10.查看

strut 1.x – 通常JSP页面用于视图。

struts 2.x – 支持多种视图技术,例如速度、Freemarker、jasper 报告、jsp 等。

关于“Struts和Struts2的区别有哪些”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Struts和Struts2的区别有哪些”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI