Mac 下 IntelliJ idea創建Spring MVC的Maven項目示例

參考并部分復用:http://blog.csdn.net/ronmy/article/details/55532254

一、下載 IntellJ Idea

下載地址:http://www.jetbrains.com/idea/download/download-thanks.html?platform=mac

licenseserver address:

http://idea.iteblog.com/key.php ? (全都小寫)

二、創建Maven Web項目( 主體是復制他人的,windows的與mac的操作過程 是一樣的)

菜單File->New Project可進入如圖界面,首先選擇左邊欄Maven,再配置JDK(如果之前添加了JDK的話會自動填充,如未添加點擊旁邊的New將JDK目錄導入即可)。勾選"Create from archetype",然后選中maven-archetype-webapp,點Next,進入如下界面:

這里需要填寫GroupId和ArtifactId,Version默認即可,這三個屬性可以唯一標識你的項目。

我自己的maven配置

填寫項目名,選擇項目保存路徑,點擊Finish:

maven會在后臺生成web項目,這需要等待一定的時間,視網絡環境而定.

下圖展示了該項目的文件結構。可以發現,它在src/main下創建了一個recources文件夾,該文件夾一般用來存放一些資源文件,還有一個webapp文件夾,用來存放web配置文件以及jsp頁面等,這已經組成了一個原始的web應用。選擇右邊紅框的Enable-Auto- Import,可以在每次修改pom.xml后,自動的下載并導入jar包。

我們可以看到,目錄結構并不是嚴格的maven格式,因為少了java源碼文件夾

首先在main文件夾下創建一個文件夾,名稱為java

將java文件夾標識為Source Root

可以看到文件夾的顏色變了,設置完成~

maven會在后臺生成web項目,這需要等待一定的時間,視網絡環境而定.

下圖展示了該項目的文件結構。可以發現,它在src/main下創建了一個recources文件夾,該文件夾一般用來存放一些資源文件,還有一個webapp文件夾,用來存放web配置文件以及jsp頁面等,這已經組成了一個原始的web應用。選擇右邊紅框的Enable-Auto- Import,可以在每次修改pom.xml后,自動的下載并導入jar包,這一點在后面詳述。

我們可以看到,目錄結構并不是嚴格的maven格式,還需進一步配置。

File->Project Structure->Model.

選中對應的文件夾,點擊上面的Make as...,相應的文件夾機會變成Sources,Tests,Resources,Test Resources,按OK,結束配置。

三、Maven自動導入jar包

既然我們要用Spring MVC開發,那肯定少不了Spring MVC的相關jar包。如果不使用Maven的話,那就需要去官網下載相關的jar包,然后導入到項目中。現在使用maven的話,就不需要上網找jar包了。

Maven所做的工作其實很簡單,就是自動把你需要的jar包下載到本地,然后關聯到項目中來。maven的所有jar包都是保存在幾個中央倉庫里面的,其中一個最常用的是Maven Repository,即,你需要什么jar包,它就會從倉庫中拿給你。那么如何告訴maven需要什么jar包呢?我們看看工程目錄,能找到一個pom.xml文件 ,maven就是靠它來定義需求的,代碼如下:

在國內訪問默認的中央倉庫較慢,用阿里的很快,設置一下http proxy地址:

IntelliJ IDEA =>preferences =>Appearance & Behavior =>System Settings => HTTP Proxy

=> 選中 Auto-detect proxy settings

=> 打勾 Automatic proxy configuration URL 輸入http://maven.aliyun.com/nexus/content/groups/public/

一般可以在http://www.mvnrepository.com/ 查看一下包是否有及版本,如果有就把dependency信息復制到pom.xml,提示更新jar包。

四、SpringMVC框架配置

進行完上面的配置,那就說明現在基本的開發環境已經搭建好了,現在要開始進行Spring MVC的網站開發。

1、web.xml配置

打開src\main\webapp\WEB-INF\下的web.xml文件,修改約束文件,如下:

[html]view plaincopy

"-//Sun?Microsystems,?Inc.//DTD?Web?Application?2.3//EN"

"http://java.sun.com/dtd/web-app_2_3.dtd">

Archetype?Created?Web?Application

dispatcher

org.springframework.web.servlet.DispatcherServlet

1

dispatcher

/

default

*.jpg

default

*.js

default

*.css

2、dispatcher-servlet.xml配置

在配置完web.xml后,需在WEB-INF目錄下新建 dispatcher-servlet.xml([servlet-name]-servlet.xml是固定規則,前面是在servlet里面定義的servlet名):

[html]view plaincopy

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:context="http://www.springframework.org/schema/context"

xmlns:mvc="http://www.springframework.org/schema/mvc"

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context.xsd

http://www.springframework.org/schema/mvc

http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd"

>







五、java代碼

MVC框架有model、view、controller三部分組成。model一般為一些基本的Java Bean,view用于進行相應的頁面顯示,controller用于處理網站的請求。

在src\java中新建一個用于保存controller的package:在controller包中新建java類testpage(名稱并不固定,可任意取),并修改如下:

代碼:

[html]view plaincopy

package?com.lzhy.demomvc;

import?org.springframework.stereotype.Controller;

import?org.springframework.web.bind.annotation.RequestMapping;

import?org.springframework.stereotype.Controller;

import?org.springframework.ui.Model;

import?org.springframework.web.bind.annotation.RequestMapping;

import?org.springframework.web.bind.annotation.RequestMethod;

import?org.springframework.web.bind.annotation.RequestParam;

import?org.springframework.web.bind.annotation.ResponseBody;

import?org.springframework.web.bind.annotation.PathVariable;

import?org.springframework.web.servlet.ModelAndView;

@Controller

/**

*?Created?by?yuwen?on?17/2/15.

*/

public?class?testpage?{

@RequestMapping("/helloworld")

public?String?hello(){

System.out.println("hello?world");

return?"success";

}

@ResponseBody

@RequestMapping(value="/body/{x}",method=RequestMethod.GET)

public?bodytest?getBody(@PathVariable("x")?String?x){

System.out.println("URI?Part?1?:?"?+?x);

bodytestbt=newbodytest();

bt.a=x;

bt.b="123";

return?bt;

}

public?class??bodytest

{

public??String?a;

public?String?b;

}

/*

*

@RequestMapping(value="/user/{userId}/roles/{roleId}",method=RequestMethod.GET)

public?String?getLogin(@PathVariable("userId")?String?userId,

@PathVariable("roleId")?String?roleId)?{

System.out.println("User?Id?:?"?+?userId);

System.out.println("Role?Id?:?"?+?roleId);

return?"success";

}

@RequestMapping(value="/product/{productId}",method=RequestMethod.GET)

public?String?getProduct(@PathVariable("productId")?String?productId){

System.out.println("Product?Id?:?"?+?productId);

return?"success";

}

*?*/

}

--@Controller注解:采用注解的方式,可以明確地定義該類為處理請求的Controller類;

--@RequestMapping()注解:用于定義一個請求映射,value為請求的url,值為 /helloworld 說明,該請求首頁請求,method用以指定該請求類型,一般為get和post;

--return "success":處理完該請求后返回的頁面,此請求返回 success.jsp頁面。

success.jsp:

[html]view plaincopy

Hello?World!???success

六、需要配置Tomcat來運行該項目。

Run->EditConfigurations

點擊左上角的"+"號,選擇Tomcat Server,再選擇Local:

點擊 Application server 右邊的 Configure,導入Tomcat 目錄:

在配置好Tomcat的路徑后,如下圖所示,發現依然存在警告,且左方的Tomcat8圖標上有一個警告標記,說明還沒有配置完全:

我們還需要將項目部署到 Tomcat 服務器中。點擊 Deployment,再點擊右邊的"+"號,添加一個Artifact.

選擇第二個:war exploded,點擊OK,這樣,該項目就已經部署到了tomcat中.

再點擊OK,整個Tomcat配置結束.

啟動 Tomcat 了,其控制臺輸出將在IDEA下方顯示

啟動后,瀏覽器將自動彈出項目首頁.

輸入http://localhost:8080/helloworld

輸出:

Hello World! success

輸入http://localhost:8080/body/123

輸出

{"a":"123","b":"123"}

七、總結

1、下載工具,安裝注冊;

2、創建Maven工程,對Pom.xml結構要理解,一定要設置http代理,不然下載太慢了;

3、MVC代碼的注釋需要學習一下,返回json格式時要單獨配置,即:在pom.xml:?com.fasterxml.jackson.core的三個jar,及dispatcher-servlet.xml加轉換配置。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容