1. 程式人生 > >搭建spring mvc開發環境

搭建spring mvc開發環境

最近在網上看了很多關於spring mvc環境的搭建的文章,感覺不是很清晰,主要是程式碼不全,所以準備自己寫一個簡單的教程。

本次spring mvc環境的搭建使用的版本是Intellij IDEA 15.0.2+maven+Tomcat 8.5.4,具體如下:

目錄結構

這裡寫圖片描述

pom.xml

開啟http://mvnrepository.com/網站,搜尋關鍵字spring,如下:
第一步:選擇Spring Web MVC(Spring Web MVC會自動引用其他Sping環境搭建需要的maven依賴)
這裡寫圖片描述
第二步:選擇4.3.2版本
這裡寫圖片描述
第三步:複製以下程式碼到專案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.xyc</groupId>
  <artifactId
>
springmvc</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>springmvc Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.3.2.RELEASE</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>springmvc</finalName> </build> </project>

spring-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       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.xsd">

    <!-- 設定使用註解的類所在的包 -->
    <context:component-scan base-package="com.xyc.springmvc.controller"/>

    <!-- 啟用 spring mvc 註解 -->
    <!-- 注意這裡使用的並不是<context:annotation-config />,<context:annotation-config />是用了啟用 spring 註解的 -->
    <mvc:annotation-driven/>

    <!-- 對轉向頁面的路徑解析。prefix:字首, suffix:字尾 -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/view/" />
        <property name="suffix" value=".jsp" />
    </bean>

</beans>

web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://java.sun.com/xml/ns/javaee"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
        http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         id="WebApp_ID" version="2.5">

  <display-name>SpringMVC</display-name>
  <!-- 設定歡迎頁面 -->
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

  <!-- Spring MVC配置 -->
  <servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!-- 可以自定義servlet.xml配置檔案的位置和名稱,預設為WEB-INF目錄下,名稱為[<servlet-name>]-servlet.xml,如spring-servlet.xml-->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:spring-servlet.xml</param-value>
    </init-param>
    <!--
      指定當Web應用啟動時,裝載Servlet的次序。
      當值為正數或零時:Servlet容器先載入數值小的servlet,再依次載入其他數值大的servlet.
      當值為負或未定義:Servlet容器將在Web客戶首次訪問這個servlet時載入它
    -->
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

</web-app>

TestController

package com.xyc.springmvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

/**
 * Created by xyc on 2016/8/27 0027.
 */
@Controller
@RequestMapping("/test")
public class TestController {
    @RequestMapping(value = "/welcome",method = RequestMethod.GET)
    public String welcome(){
        System.out.println("---welcome---");
        return "welcome";
    }
}

執行測試

以上就是全部程式碼,希望可以給大家一點幫助!謝謝!!!