struts2笔记01-环境搭建

时间:2021-02-19 10:37:08

1、官网下载struts2

struts-2.3.28-all.zip,这个包可谓应有尽有,以后全靠它了!

2、jar包怎么选?

      (1)struts-2.3.28-all\struts-2.3.28\lib\*.jar,可以选这个目录下的所有jar包,不过是不是太多了?应该没有必要吧!

(2)struts-2.3.28-all\struts-2.3.28\apps,这个目录是干嘛的?是一些例子啊,进去瞧瞧吧,有几个war包,解压一个看看!

(3)struts2-blank.war,解压它,`(*∩_∩*)′,得到一个空的struts2 web项目!

(4)struts-2.3.28-all\struts-2.3.28\apps\struts2-blank\WEB-INF\lib,这目录之下的jar包应该是一个struts项目必备的了!

asm-3.3.jar
asm-commons-3.3.jar
asm-tree-3.3.jar
commons-fileupload-1.3..jar
commons-io-2.2.jar
commons-lang3-3.2.jar
freemarker-2.3..jar
javassist-3.11..GA.jar
log4j-api-2.3.jar
log4j-core-2.3.jar
ognl-3.0..jar
struts2-core-2.3..jar
xwork-core-2.3..jar

复制到自己的项目lib下即可

3、配置web.xml

     怎么配啊?同样参考struts-2.3.28-all\struts-2.3.28\apps\struts2-blank\WEB-INF\web.xml,打开它,会找到如下几行:

    <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>

一个filter过滤器,StrutsPrepareAndExecuteFilter这个过滤器就是struts的根了,struts2是基于过滤器实现的mvc框架,这个过滤器就是它!

4、添加struts.xml

   找到 struts-2.3.28-all\struts-2.3.28\apps\struts2-blank\WEB-INF\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">/WEB-INF/jsp/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>

end.