Struts2
Struts2 是在 WebWork2 基础发展而来的。和 struts1 一样, Struts2 也属于 MVC 框
架。不过有一点大家需要注意的是:尽管 Struts2 和 struts1 在名字上的差别不是很大,
但 Struts2 和 struts1 在代码编写风格上几乎是不一样的。那么既然有了 struts1 ,为
何还要推出 struts2 。主要是因为 struts2 有以下优点:
1 > 在软件设计上 Struts2 没有像 struts1 那样跟 Servlet API 和 struts API 有着紧密的耦
合, Struts2 的应用可以不依赖于 Servlet API 和 struts API 。 Struts2 的这种设计属于无侵入式
设计,而 Struts1 却属于侵入式设计。
public class OrderListAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
}
}
2> Struts2 提供了拦截器,利用拦截器可以进行 AOP 编程,实现如权限拦截等功能。
3> Strut2 提供了类型转换器,我们可以把特殊的请求参数转换成需要的类型。在 Struts1 中,如
果我们要实现同样的功能,就必须向 Struts1 的底层实现 BeanUtil 注册类型转换器才行。
4> Struts2 提供支持多种表现层技术,如: JSP 、 freeMarker 、 Velocity 等
5> Struts2 的输入校验可以对指定方法进行校验,解决了 Struts1 长久之痛。
6> 提供了全局范围、包范围和 Action 范围的国际化资源文件管理实现
评论0