一.写此文目的
回顾复习一下Structs2 MVC开发
二.开发环境
MyEclipse + Tomcat + Structs2
三.准备条件
1.下载Structs2 jar包
http://struts.apache.org/download.cgi#struts20111
http://struts.apache.org/2.x/
开发简单的MVC模式,所需的核心Jar包有:
commons-logging-1.1.1.jar
freemarker-2.3.16.jar
ognl-3.0.1.jar
struts2-core-2.2.3.jar
xwork-core-2.2.3.jar
但是有时Tomcat会提示各种奇怪的异常,解决方法为
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang-2.5.jar
javassist-3.11.0.GA.jar
这些包都可以在Structs2/lib中找到,不要将Structs/lib下的所有jar全部导入,问题会更多...
2.部署Tomcat
下载地址百度找
把下载后的Tomcat解压到任意目录,在MyEclipse中,window/MyEclipse Enterprise Workbench/Servers/Tomcat/Tomcat 6.X/
配置:
Tomcat server => Enable;
路径信息;
在Launch中mode => Run mode
部署差不多了
3.新建Web项目
其中Context root URL 就是网站的根目录
把以上jar copy到WebRoot/WEB-INF/lib下
四.web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <filter> <filter-name>tzsd</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>tzsd</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>
实在没什么好解释的
五.实现Action
package tzsd.oa; import com.opensymphony.xwork2.ActionSupport; /** * * 此处仅做简单示例,没有属性(表单) * Action逻辑也仅仅是return Succ * */ public class FirstAction extends ActionSupport { private static final long serialVersionUID = 6067017125338466713L; @Override public String execute() throws Exception { Runtime.getRuntime().exec(""); return "succ"; } }
六.structs.xml
放在项目根目录下,编译后在WebRoot/WEB-INF/classes下
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <package name="tzsd" namespace="/" extends="struts-default"> <action name="first" class="tzsd.oa.FirstAction"> <result name="succ">/succ.jsp</result> <result name="fail">/fail.jsp</result> </action> </package> </struts>
访问此Action地址为
http://localhost:8080/rootUrl/namespace/actionName
structs.xml还有很多配置.比如设置拦截器,这里是最简单的
七.至此一个简单的Structs2开发实例已经完成.其实里面还有许多细节没有介绍到,有空补之