1. 程式人生 > >maven配置專案例項.

maven配置專案例項.

Eclipse下的Maven環境配置

java學習階段其實是學習api.這個就在熟練運用.下一個步驟在於學習實現和原始碼
安裝maven.1.下載maven包.–>2解壓(不需要安裝,解壓就可以)–>3.配置mvn環境變數.(在這之前要安裝好jdk)–>在 command line argument(cmd命令列)
中輸入mvn -v顯示mvn的版本資訊說明安裝成功.
額外操作:修改conf下的settting.xml檔案,修改本地庫的位置<localRepository>D:\m2\repository</localRepository>(在本地庫中去建立這個路徑。並將settting.xml檔案拷貝一份到這個路徑下),並修改遠端庫的位置

 <mirror>
      <id>alimaven</id>
      <mirrorOf>central</mirrorOf>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    </mirror>

3.安裝eclipse的maven外掛,Help->Install New Software
  輸入http://download.eclipse.org/technology/m2e/releases/

 選擇Maven進行安裝
  3.1(可以在help–〉about eclipse中檢視到已經安裝的外掛列表。)安裝成功後會在Window->Preferences中看到Maven外掛選項
  3.2進入Installations,新增本地Maven安裝路徑
  3.3 進入User Settings,第一項全域性setting選擇Maven安裝路徑下的conf->settings.xml檔案.第二項usersetting選擇,自己修改的本地位置裡的settting.xml檔案。第三項local repository選擇本地倉庫位置。
  
這裡寫圖片描述
。這就可以了

配置struts2專案例項

1。首先在File中選擇Maven Project
2。接著選擇工作空間路徑,這裡我選擇預設路徑。原型專案archetype
選擇建立webapp專案(maven-archetype-webapp)就可以了。
3。根據專案實際輸入Group id和Artifact id。在此可以設定專案版本號。
4。最後finish,這樣就成功建立了一個maven的web專案。(第一次建立專案需要等待環境準備。這個需要耐性等待一會兒。)
5。這時我們注意到Java Resources目錄下沒有出現 src/main/java 和 src/test/java兩個目錄,這兩個目錄是存放java原始碼的目錄。解決辦法如下:右鍵專案->Build Path->Configure Build Path
這裡寫圖片描述

  • 進入Order and Export目錄,勾選兩個缺失的庫
    這裡寫圖片描述

  • 儲存修改並應用
    可以看到Java Resources目錄下出現了src/main/java和src/test/java目錄。這樣才算最終成功建立了maven的web專案。

maven的struts2專案例項

  • 1匯入struts2庫
      在maven中匯入庫不再需要你手動複製庫檔案,只需要你修改pom.xml,maven會自動下載相應的庫到本地。
      pom.xml的修改如下:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.demo</groupId>
    <artifactId>MavenDemo</artifactId>
    <packaging>war</packaging>
    <version>0.0.1-SNAPSHOT</version>
    <name>MavenDemo Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <dependencies>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
      </dependency>
    
      <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>servlet-api</artifactId>
          <version>2.5</version>
          <scope>provided</scope>
      </dependency>
    
      <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-core</artifactId>
            <version>2.5.2</version>
      </dependency>
    
    </dependencies>
    <build>
      <finalName>MavenDemo</finalName>
    </build>
    </project>

     一共匯入了三個依賴包。分別是junit、javax.servlet、struts2-core這三個包。

     修改後,別忘了更新Maven專案。右鍵專案->Maven->Update Project(其實我們儲存pom.xml檔案的時候,就開始下載了),然後就可以看到maven已經將依賴包下載到本地了。

2新增動作類(Action)
前面提到src/main/java是用來存放java程式碼的,這裡我們在裡面放一個簡單的動作類。
這裡寫圖片描述

登陸動作,只有UserName的getter和setter

package com.demo;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {
    public String Name;

    public String getName() {
        return Name;
    }

    public void setName(String name) {
        Name = name;
    }

    @Override
    public String execute() throws Exception {
        return SUCCESS;
    }

}
新增檢視(View)
檢視檔案存在webapp目錄下,這裡我們也只需建立兩個檢視。

3.1首頁檢視,使用者輸入姓名,並提交

<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ page pageEncoding="UTF-8"%>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
    <h2>Hello World!</h2>

    <form action="loginAction">
          姓名<input type='text' name="Name"><input type="submit" value="提交">
    </form>
</body>
</html>

3.2結果檢視,返回使用者姓名

<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ page pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Welcome</title>
</head>
<body>
    Hello <s:property value="Name" />

</body>
</html>

4配置struts.xml
這裡在src/main/resources中建立一個struts.xml檔案,並在其中進行修改。

Paste_Image.png

建立一個動作類到檢視的一個對映

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
    "http://struts.apache.org/dtds/struts-2.5.dtd">

<struts>
    <constant name="struts.devMode" value="true"></constant>  
    <constant name="struts.i18n.encoding" value="UTF-8"></constant> 
    <constant name="struts.locale" value="zh_CN"></constant> 

    <package name="hurricane" extends="struts-default">
        <action name="loginAction" class="com.demo.LoginAction" method="execute">
         <result>  
           /result.jsp
        </result>  
        </action>
    </package>
</struts>

5最後修改web.xml
  web.xml是一個任何對struts2請求的入口點。Struts2應用程式的入口點是在web.xml中定義的過濾器。這些都需要在web.xml中進行宣告

Paste_Image.png

  web.xml的程式碼如下:

<web-app>
  <display-name>Archetype Created Web Application</display-name>
    <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

</web-app>

  注:不同版本的struts2這裡對應的過濾器不同,可能需要針對專門檢視專門的struts2說明。

執行專案例項
  右鍵專案->Run->Run as Server就可以看到專案執行情況,執行
  至此完成了Maven中struts2例項的配置。

[注].是步驟記錄。
參看地址http://www.jianshu.com/p/91fff2f8346a
文中沒有,謝謝該作者的優秀博文