1、基本概念
SSH框架是JAVA EE中三种框架所集成,分别是Struts,Spring,Hibernate框架所组成,是当前比较流行的java web开源框架。
集成SSH框架的系统从职责上分为(Struts2–控制;spring–解耦;hibernate–操作数据库),以帮助开发人员在短期内搭建结构清晰、可服用好、维护方便的web应用程序。使用Struts作为系统的整体基础框架,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用hibernate框架对持久层提供支持,spring做管理,管理Struts和hibernate。
2、Struts2
(1)基本概念
Struts2是一个基于MVC设计模式的web应用框架,相当于一个servlet,在MVC设计模式中,Struts2作为控制器(controller)来建立模型与视图的数据交互。Struts2在Struts1融合webwork。struts2以webwork为核心,采用拦截器的机制来处理用户的请求,这样的设计使得业务逻辑控制器能够与servletAPI完全脱离。
(2)Struts2框架的运行结构
解析:客户端发送请求(HttpServletRequest)到服务器,服务器接收到请求就先进入web.xml配置文件看看有没有配置过滤器,发现有有Struts2的过滤器,然后找到struts.xml配置文件,struts.xml配置文件里定义一个action,然后就去找到action类,此类继承ActionSupport接口,并且实现了execute()方法,返回一个字符串“success”给struts.xml配置文件,struts.xml配置文件的action会默认调用action类的execute()方法,result接收到返回的字符串,result就会调用你指定的jsp页面将结果呈现,最后响应给客户端。
(3)Struts2的优势
-
实现了MVC模式,层次结构清晰,使程序员只需要关注业务逻辑的实现。
-
丰富的标签库,大大提高了开发的效率。
-
Struts2提供丰富的拦截器实现。
-
通过配置文件,就可以掌握整个系统各个部分之间的关系。
-
异常处理机制,只需在配置文件中配置异常的映射,即可对异常做响应的处理。
-
Struts2的可扩展性高。
-
面向切面编程的思想在Struts2中也有了很好的体现。
-
体现了拦截器的使用,拦截器是一个一个的小功能模块,用户可以将这些拦截器合并成一个大的拦截器,这个合成的拦截器就像单独的拦截器一样,只要将它配置到一个Action中就可以。
(4)Struts2的缺点:
-
校验较繁琐,多字段出错返回不同。
- <