概述
一、前言
前一篇博客中小编向大家分享了《【SSH】SSH框架(一)——宏观介绍》,整体介绍了SSH框架的宏观结构,接下来小编会依次向大家详细介绍。在本博客中向大家介绍的是Struts2。
二、对比以前
小编是第一次接触Java的项目,这个项目用到的框架之中就有Struts2,刚开始的时候小编自己都被这些整的蒙头转向的,刚接触后自己查了查资料,知道了它主要是采用拦截器的机制来处理用户的请求。
在正式学习一种新的技术之前,我们要知道使用Struts2的目的是什么?
Struts2主要是使用了MVC框架,它的目的是使Model和View分离,中间由Controllor进行中转。在以前的.Net项目中有自己也用过Spring MVC,也体验了一下它的灵活性,了解了数据到后台的变活流程。
三、技术要点
3.1 引入jar包
要使用Struts2框架,首先要引入相应的jar包。然后在web.xml配置文件中配置Struct2的核心过滤器,然后在struts.xml配置文件中配置struts的基本映射信息。
- 引入jar包:
struts-2.3.15.3appsstruts2-blank.warWEB-INFlib*.jar
struts-2.3.15.3libstruts2-json-plugin-2.3.15.3.jar
struts-2.3.15.3libstruts2-spring-plugin-2.3.15.3.jar
3.2 web.xml
Struts2 应用程序的入口点,将是一个部署描述符(web.xml)中定义的过滤器。因此,我们将定义在web.xml中的FilterDispatcher是类的项。需要创建的文件夹的WebContent/ WEB-INF下web.xml文件。
<!--web.xml 文件中配置的Struts2-->
<!-- 配置Struts2的核心过滤器 -->
<filter>
<!--定义过滤器的名字-->
<filter-name>
struts2
</filter-name>
<!--过滤器的类-->
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<!--元素过滤器映射,映射 servlet或一个URL模式-->
<filter-mapping>
<!--过滤器名称-->
<filter-name>struts2</filter-name>
<!--所有的URL将被解析struts的过滤器-->
<url-pattern>/*</url-pattern>
<!-- 请求走核心过滤器 -->
<dispatcher>REQUEST</dispatcher>
<!-- 转发也走核心过滤器 -->
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
<!---->
<display-name></display-name>
<!---->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
请注意,我们Struts 2的过滤器映射为/, /.action这意味着所有的URL将被解析struts的过滤器。我们将覆盖时,我们将通过“注释”一章。
3.3 struts.xml
<struts>
<!-- 开发模式 -->
<constant name="struts.devMode" value="false" />
<package name="shop" extends="struts-default" namespace="/">
<!-- 全局的映射-Ares-2016年9月25日22:21:37 -->
<!-- 全局results配置 -->
<global-results>
<result name="msg">/WEB-INF/jsp/msg.jsp</result>
</global-results>
<!-- 配置首页访问的Action -->
<action name ="index" class="indexAction">
<result name = "index">
/WEB-INF/jsp/index.jsp
</result>
</action>
</package>
</struts>
web.xml配置文件字段解释:
package-name:用于区别不同的package;必须是唯一的、可用的变量名;用于其它package来继承;
package--namespace:用于减少重复代码(和struts1比较);是调用action时输入路径的组成部分;
package--extends:用于继承其它package以使用里面的过滤器等;
action--name:用于在一个package里区别不同的action;必须是唯一的、可用的变量名;是调用action时输入路径的组成部分;
action--class:action所在的路径(包名+类名);
action--method:action所调用的方法名;
3.4 附加了解:从Struts到Struts2.
Struts已经分化成了两个框架:第一个是在传统的Struts1的基础上,融合了另外的一个优秀的Web框架WebWork的Struts2。Struts 2虽然是在Struts1的基础上发展起来的,但是实质上是以WebWork为核心的。Struts2为传统的Struts1注入了WebWork的先进的设计理念,统一了Struts1和WebWork两个框架。
Struts1分化出来的另外一个框架是Shale。这个框架远远超出了Struts1原有的设计思想,与原有的Struts1关联很少,使用了全新的设计思想。Shale更像一个新的框架而不是Struts1的升级。
四、小结
小编完成了这个框架的搭建,但是还是不是很清楚,还是需要多多的了解,在以后的学习过程中,会很大的帮助小编前进的。在不断的尝试中,不断前进。
在下一篇博客中小编将会给大家带来《【SSH】SSH框架(三)——Spring》
最后
以上就是乐观睫毛为你收集整理的【SSH】SSH框架(二)——Struts2框架的简单认识一、前言二、对比以前三、技术要点四、小结的全部内容,希望文章能够帮你解决【SSH】SSH框架(二)——Struts2框架的简单认识一、前言二、对比以前三、技术要点四、小结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复