struts2做控制器相比servlet有啥优点
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2做控制器相比servlet有啥优点相关的知识,希望对你有一定的参考价值。
struts2做控制器相比servlet有什么优点 它们都是做MVC中的C控制器,struts2是当前使用比较广泛的一个框架,它有什么优点,相比用servlet做控制器?
参考技术A 与Servlet相比,Struts的控制器可以不用显式的书写Java代码,而是可以在Struts-Config.xml配置文件中配置相应的Action与URL之间的映射关系以及处理完成后转发给那个JSP来显示处理的结果.在Struts内部,控制器也是使用一个Servlet来控制转发,这个Servlet叫做ServletAction,但是这个ServletAction的转发规则的定义就映射到了Struts-Config.xml这个结构相对简单的配置文件中,程序员和维护人员可以很容器的定义或修改内部的转发规则.
Servlet也是在Web容器中运行的,Servlet的生命周期容器启动的时候,会加载servlet的class,并new出这个对象,然后,当用户请求这个servlet的时候,容器会调用init方法初始化这个
servlet,这也是整个生命周期中只会调用一次的方法,然后,会调用service方法,由这个方法调用doGet或
doPost方法来响应用户,然后,容器在可用资源紧张或是长期没有对Servlet发出
请求的情况下,会销毁这个servlet。
struts是一个基于MVC模式的一个框架,分别是表示层(view)、控制层(controller)、和模型层(Model)。其表示层使用Struts标签库构建。来自客户的所有需要通过框架的请求统一由叫ActionServlet的servlet接收(ActionServlet
Struts已经为我们写好了,只要您应用没有什么特别的要求,它基本上都能满足您的要求),根据接收的请求参数和Struts配置(struts-config.xml)中ActionMapping,将请求送给合适的Action去处理,解决由谁做的问题,它们共同构成Struts的控制器。Action则是Struts应用中真正干活的组件,开发人员一般都要在这里耗费大量的时间,它解决的是做什么的问题,它通过调用需要的业务组件(模型)来完成应用的业务,业务组件解决的是如何做的问题,并将执行的结果返回一个代表所需的描绘响应的JSP(或Action)的ActionForward对象给ActionServlet以将响应呈现给客户。
以上是关于struts2做控制器相比servlet有啥优点的主要内容,如果未能解决你的问题,请参考以下文章