【SSH】Struts2总结

             是什么

Struts2是基于MVC设计模式的Web应用程序框架,帮助我们减少开发时间。其是在Struts1和WebWork的基础上合并出来的新框架,与Servlet等效,属于表现层。

              原理

这里写图片描述

【图一:原理图】

传输过程如下:
1.客户端初始化一个指向Servlet容器(例如Tomcat)的请求
2.这个请求经过一系列的过滤器(Filter)
3.接着StrutsPareAndExecuteFilter被调用,其询问ActionMapper是否调用相应的Action
4.如果被许可调用,其把请求的处理交给ActionProxy
5.ActionProxy先通过ConfigurationManager询问框架的配置文件,找到需要调用的Action类,然后创建一个ActionInvocation的实例。
6.ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用
7.一旦Action执行完毕,ActionInvocation负责根据Struts.xml中的配置找到对应的返回结果。返回结果通常是一个需要被表示成JSP或FreeMarker的模板。在表示的过程中可以使用Struts2框架中继承的标签。在这个过程中需要涉及到ActionMapper。

备注:FilterDispatcher已被StrutsPrepareAndExecuteFilter替代,因为后者能在执行action之前,添加自己的过滤器

       一个小demo—Struts2+MyEclipse

第一步:新建项目
(1)空白处-右键-new-WebProject;
(2)填写项目名称-Finish
这里写图片描述

【图二:输入项目名称】

第二步:相关配置
(1)右击项目—Configure Facets—Install Apache Struts(2.x) Facet
(2)弹出框后,直接选Finish,就会产生如下效果
这里写图片描述

【图三:选Struts2】

这里写图片描述

【图四:选择Struts2框架后】

第三步:运行项目
(1)右击项目-Debug As-MyEclipse Server Application-选择相应的Tomcat(关于Tomcat的相关配置,请看博主相关博客)
(2)产生结果
这里写图片描述
【图五:选择相应的Tomcat】

这里写图片描述

【图六:最终效果】

              小结

SSH和MVC的关系:
从广义上说,MVC是一种思想,SSH是一种框架,SSH框架运用了MVC的思想;
从狭义上说,在B/S开发中,表现层又分为MVC,Struts2的作用就是实现MVC。

猜你喜欢

转载自blog.csdn.net/qsbbl/article/details/80145565
今日推荐