1、環境java
系統:Windows7android
IDE:Eclipse-Kepler Service Release 2web
使用插件:Maven(請預先在電腦上安裝Maven)apache
2、搭建服務器
在Eclipse中新建一個Maven工程:app
選擇Maven Project。jsp
注意選擇maven-archetype-web選項。Catalog處,點擊右邊的Configuration按鈕,彈出對話框:maven
點擊右邊的Add remote Catalog,在Catalog file輸入框中輸入http://repo1.maven.org/maven2/archetype-catalog.xml,Description則隨便輸入(等於去一個名字)而後點擊OK,繼續Next。ide
在此處輸入項目的group id和artifact id。點擊Finish。此時項目的目錄結構以下:ui
項目報錯誤,暫時能夠不用管。下面繼續配置。由於要用到Struts2,因此須要依賴不少相應的jar包,這就是使用Maven的目的,下面修改Maven的pom文件以下:
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 2 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 3 <modelVersion>4.0.0</modelVersion> 4 <groupId>com.amos</groupId> 5 <artifactId>struts2</artifactId> 6 <packaging>war</packaging> 7 <version>0.0.1-SNAPSHOT</version> 8 <name>struts2 Maven Webapp</name> 9 <url>http://maven.apache.org</url> 10 <dependencies> 11 <dependency> 12 <groupId>junit</groupId> 13 <artifactId>junit</artifactId> 14 <version>3.8.1</version> 15 <scope>test</scope> 16 </dependency> 17 <dependency> 18 <groupId>org.apache.struts</groupId> 19 <artifactId>struts2-core</artifactId> 20 <version>2.3.16</version> 21 </dependency> 22 <dependency> 23 <groupId>org.apache.commons</groupId> 24 <artifactId>commons-io</artifactId> 25 <version>1.3.2</version> 26 </dependency> 27 </dependencies> 28 <build> 29 <finalName>struts2</finalName> 30 </build> 31 </project>
增長了兩個依賴的jar包。
配置web.xml以下:
1 <!DOCTYPE web-app PUBLIC 2 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 3 "http://java.sun.com/dtd/web-app_2_3.dtd" > 4 <web-app> 5 <display-name>Archetype Created Web Application</display-name> 6 <filter> 7 <filter-name>struts2</filter-name> 8 <filter-class> 9 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 10 </filter-class> 11 </filter> 12 <filter-mapping> 13 <filter-name>struts2</filter-name> 14 <url-pattern>/*</url-pattern> 15 </filter-mapping> 16 </web-app>
這裏拷貝的是struts-2.3.16-all.zip包裏的apps/struts2-blank.war中的web.xml。也就是一個Struts2默認的web.xml的配置。
接着,咱們來實現Action,在Java Resources目錄下面新建一個源文件夾:
在該文件夾下面新建一個pacakge(com.android.displaymain),而後新建一個HelloAction,以下:
HelloAction代碼以下:
1 package com.android.displaymain; 2 3 import com.opensymphony.xwork2.ActionSupport; 4 5 public class HelloAction extends ActionSupport{ 6 7 @Override 8 public String execute() throws Exception { 9 // TODO Auto-generated method stub 10 return SUCCESS; 11 } 12 }
在src/main/resources文件夾下面建立文件struts.xml文件:
在其中配置以下:
1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE struts PUBLIC 3 "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" 4 "http://struts.apache.org/dtds/struts-2.3.dtd"> 5 6 <struts> 7 <package name="com.android.server" namespace="/" extends="struts-default" > 8 <action name="HelloAction" class="com.android.displaymain.HelloAction" method="execute"> 9 <result name="success">index.jsp</result> 10 </action> 11 </package> 12 </struts>
OK,如今右擊項目,Run As ->Run on Server,此時彈出對話框,直接next,finish的,最後在Eclipse裏面會彈出以下Tab:
這是由於咱們沒有指明Action,將連接改成:http://localhost:8080/display/HelloAction以後,便可獲得以下輸出:
到這裏,整個項目就配置完成了。若是想要默認的狀況下也能正確顯示頁面,須要咱們配置一個默認的Action,將struts.xml文件改成以下樣子:
1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE struts PUBLIC 3 "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" 4 "http://struts.apache.org/dtds/struts-2.3.dtd"> 5 6 <struts> 7 <package name="com.android.server" namespace="/" extends="struts-default" > 8 <default-action-ref name="index"/> 9 10 <action name="index"> 11 <result>/index.jsp</result> <!-- index.htm爲項目根目錄的默認頁面 --> 12 </action> 13 14 <action name="HelloAction" class="com.android.displaymain.HelloAction" method="execute"> 15 <result name="success">index.jsp</result> 16 </action> 17 </package> 18 </struts>
3、總結
這裏主要講述的是如何快速搭建一個可用的服務器,過程比較長,可是沒有什麼難度,須要必定的Maven基礎和Struts基礎,若是不會Maven,須要手動導入Jar包,比較麻煩,讀者能夠自行動手練習配置。