struts2已經是出來好久了, 覺得有必要對.Net與Java的MVC模式進行以下比較:
先談下struts2的原理,不過先來入門吧
1.先安裝eclipse,我只會eclipse.
2.安裝jdk,tomcat
3.下載struts2的庫
4.新建一個eclipse Java工程
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311294868.gif)
選擇tomcat project
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311294967.gif)
輸入工程名稱:TestMvc
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295038.gif)
點擊完成
5.引入struts庫文件
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295069.gif)
復制這些文件到,相應目錄,如下:
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295043.gif)
引入庫之後,需要把它們列入編譯路徑中:
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295134.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295288.gif)
點add jar
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295277.gif)
把他們全部加入到編譯環境中
6.搭建web.xml和struts.XML(為什麼以後解釋)
目錄結構如下:(千萬不能搞錯了)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295318.gif)
web.XML
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295377.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<?XML version="1.0" encoding="GBK"?>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<web-app xmlns="http://java.sun.com/xml/ns/J2EE" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/XML/ns/J2EE http://Java.sun.com/XML/ns/J2EE/web-app_2_4.xsd" version="2.4">
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<display-name>Struts 2.0 Sample</display-name>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<filter>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<filter-name>action2</filter-name>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<filter-class>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
org.apache.struts2.dispatcher.FilterDispatcher
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
</filter-class>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
</filter>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<filter-mapping>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<filter-name>action2</filter-name>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<url-pattern>/*</url-pattern>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
</filter-mapping>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
</web-app>
struts.XML
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<?XML version="1.0" encoding="GBK"?>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<struts>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<include file="struts-default.XML"/>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<package name="struts2" extends="struts-default">
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<action name="add"
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
class="edisundong.AddAction" >
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
<result>add.JSP</result>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
</action>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
</package>
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
</struts>
7.AddAction.Java
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
package edisundong;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
import com.opensymphony.xwork2.ActionSupport;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295370.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295321.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295391.gif)
public class AddAction extends ActionSupport ...{
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295463.gif)
/**//**
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
*
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295403.gif)
*/
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
private static final long serialVersionUID = 1L;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
private int one;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
private int another;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
private int sum;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295463.gif)
public int getAnother() ...{
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
return another;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295403.gif)
}
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295463.gif)
public void setAnother(final int another) ...{
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
this.another = another;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295403.gif)
}
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295463.gif)
public int getOne() ...{
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
return one;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295403.gif)
}
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295463.gif)
public void setOne(final int one) ...{
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
this.one = one;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295403.gif)
}
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295463.gif)
public int getSum() ...{
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
return sum;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295403.gif)
}
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295463.gif)
public void setSum(final int sum) ...{
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
this.sum = sum;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295403.gif)
}
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295463.gif)
public String execute() throws Exception ...{
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
this.sum = this.one + this.another;
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295420.gif)
return "success";
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295403.gif)
}
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295425.gif)
}
8.測試
輸入http://localhost:8080/TestMvc/add.JSP
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295450.gif)
輸入123 和 456
結果
![](https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011311295521.gif)
結束!
不好意思,實在是寫的太簡單了,改日分析一下,呵呵,睡覺了