在学过jsp,servlet,javaBean,懂得如何使用MVC模式开发项目后,我们来了解一下SSH,在这里首先介绍一下struts2,百度一下就知道,Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。
好了,接下来我们来了解一下struts2项目与普通web项目的区别,如何根据他们的区别将一个普通的web项目改成一个struts项目。
我们首先我们到http://struts.apache.org/download.cgi#struts238这个地址下载一个最新的struts2.3.8版本的,struts-2.3.8-all.zip,解压后我们可以看到以下文件:
apps
基于Struts2的示例应用,包含5个war包,可直接部署到服务器上运行。
docs
Struts2的相关文档
lib
Struts2框架的核心类库、Struts2的第三方插件类库,共82个jar包,为避免臃肿,一般只添加必须包含的类库,可以从Struts2示例blank应用中获取。
src
Struts2框架的全部源代码
接下来,我们看一下,struts2自带的一个Demo,struts2-blank.war,将其解压(可以用压缩包解压,也可以将项目部署到tomcat后,启动服务器,自动解压)就可以看到
和普通项目表面上没什么区别,但是认真研究之后你会发现有以下3点区别:
1,struts项目的web-inf文件夹里的web.xml里比普通的web项目中多了一个过滤器:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
2,还有lib文件夹里面多了11个jar架包
3,src和classes文件夹里面多了一个struts.xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<default-action-ref name="index" />
<global-results>
<result name="error">/error.jsp</result>
</global-results>
<global-exception-mappings>
<exception-mapping exception="java.lang.Exception" result="error"/>
</global-exception-mappings>
<action name="index">
<result type="redirectAction">
<param name="actionName">HelloWorld</param>
<param name="namespace">/example</param>
</result>
</action>
</package>
<include file="example.xml"/>
<!-- Add packages here -->
</struts>
所以呢,我们可以根据以上的3点区别来将一个普通的web项目改成一个struts项目。
我们利用myeclipse新建一个web项目,然后再将struts去少的东西复制粘贴进去就行了。
千万要记住,struts.xml中的以上红色部分是千万不能少的,否则会出现错误!!
复制粘贴好之后,启动服务器,如果没错误就说明struts项目已经配置好了~~~