Struts框架可分为以下四个主要部分,其中三个部分和MVC模式紧密相关:
1. 模型层(Model),本质上来说在Struts中Model是一个Action类,开发者通过其实现商业逻辑,同时用户请求通过控制器(Controller)向Action的转发过程是基于由struts-config.xml文件描述的配置信息的。在struts框架中,模型分为两个部分:1)系统的内部状态, 2)可以改变状态的操作(事务逻辑)。内部状态通常由一组ActinForm JavaBean表示。根据设计或应用程序复杂度的不同,这些Bean可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean调用。
2. 视图(View),View是由与控制器Servlet配合工作的一整套JSP定制标签库构成,利用这些标签可以快速建立应用系统的界面。
3. 控制器(Controller),本质上是一个Servlet,将客户端请求转发到相应的Action类。 struts中,基本的控制器组件是ActionServlet类中的实例servelet,实际使用的servlet在配置文件中由一组映射(由ActionMapping类进行描述)进行定义。
4. 一堆用来做XML文件解析的工具包,Struts是用XML来描述如何自动产生一些JavaBean的属性的,此外Struts还利用XML来描述在国际化应用中的用户提示信息的(这样一来就实现了应用系统的国际化)。
使用Struts的主要优点:
1. 开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。
2. Taglib是Struts的标记库,灵活应用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。
3. 页面导航,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。
对于Struts来说,MVC架构的使用,分工明确,逻辑清晰,加上适当的注解,通过一个配置文件,就不难做到把握整个系统各部分之间的联系,这对于后期的维护和扩展有着莫大的好处。
本文转自凌辉博客51CTO博客,原文链接http://blog.51cto.com/tianli/32056如需转载请自行联系原作者
lili00okok