eclipse+maven springMVCæå»º
1.æ°å»ºé¡¹ç®ï¼ éæ©Maven Project
鿩项ç®ä½ç½®ï¼è¿éæéæ©çæ¯C:\Users\admin\workspace\practice
éæ©maven项ç®ç±»åï¼è¿ééæ©webappï¼
å¡«åGroup Id åArtifact Idï¼
æè¿éä¸ç¥é为ä»ä¹ï¼å»ºç«é¡¹ç®åï¼æºä»£ç æä»¶å¤¹æä¸ä¸ªå´åªæ¾ç¤ºäºä¸ä¸ªï¼è¿éææä»ä»¬å
¨é¨å é¤å¹¶éæ°å建å个æºä»£ç æä»¶å¤¹å¦ä¸ï¼
å³é®é¡¹ç®-properties-Deployment Assembly:
å é¤ä¸¤ä¸ªtestæä»¶å¤¹ä»¥åtargetæä»¶å¤¹ï¼ä½¿ä¹æä¸ºä¸é¢çæ ·åï¼
é
ç½®web.xmlï¼
ä¸»è¦æ¯filter以åservletçé
ç½®
1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" 3 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> 4 <display-name>practice2</display-name> 5 6 <filter> 7 <filter-name>CharacterEncodingFilter</filter-name> 8 <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> 9 <init-param> 10 <param-name>encoding</param-name> 11 <param-value>utf-8</param-value> 12 </init-param> 13 </filter> 14 <filter-mapping> 15 <filter-name>CharacterEncodingFilter</filter-name> 16 <url-pattern>/*</url-pattern> 17 </filter-mapping> 18 19 <servlet> 20 <servlet-name>practice2</servlet-name> 21 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 22 <init-param> 23 <param-name>contextConfigLocation</param-name> 24 <param-value>classpath:spring-servlet.xml</param-value> 25 </init-param> 26 <load-on-startup>1</load-on-startup> 27 </servlet> 28 <servlet-mapping> 29 <servlet-name>practice2</servlet-name> 30 <url-pattern>/</url-pattern> 31 </servlet-mapping> 32 33 </web-app>
å¨resourcesæä»¶å¤¹ä¸å建spring-servlet.xmlæä»¶(æ¤å¤æä»¶åä¸web.xmlä¸çé
ç½®ç¸åå³å¯ï¼ä½åç¼ä¸å®æ¯ -servlet.xml)
é
ç½®spring-mvc.xmlï¼
1 <?xml version="1.0" encoding="UTF-8"?> 2 <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:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:p="http://www.springframework.org/schema/p" 3 xsi:schemaLocation=" 4 http://www.springframework.org/schema/beans 5 http://www.springframework.org/schema/beans/spring-beans.xsd 6 http://www.springframework.org/schema/context 7 http://www.springframework.org/schema/context/spring-context.xsd 8 http://www.springframework.org/schema/tx 9 http://www.springframework.org/schema/tx/spring-tx.xsd 10 http://www.springframework.org/schema/aop 11 http://www.springframework.org/schema/aop/spring-aop.xsd 12 http://www.springframework.org/schema/mvc 13 http://www.springframework.org/schema/mvc/spring-mvc.xsd"> 14 15 16 <mvc:annotation-driven /> 17 <!-- 该é 置为èªå¨æ«æé ç½®çå 䏿æä½¿ç¨@Controller注解çç±» --> 18 <context:component-scan base-package="" />(base-packgeæä¸çç½) 19 <!-- 跳转页é¢ä½¿ç¨ï¼å¦æä¸é ç½®çè¯ï¼é£ä¹æä»¬springmvcè¿å页é¢çæ¶åï¼ä¼è¢«è®¤ä¸ºæ¯è¯·æ±urlå¤çï¼æä»¥å°±æ æ³å°è¾¾æ³è¦è·³è½¬ç页é¢ãè¿æ¯å 为web.xmléé¢é ç½®ç访é®è·¯å¾ä¸º'/'ä¹å°±æ¯ææè®¿é®è·¯å¾é½è¢«è®¤ä¸ºæ¯è¯·æ±url --> 20 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/view/" p:suffix=".jsp" p:order="5" /> 21 <mvc:resources mapping="/js/**" location="/WEB-INF/js/" /> 22 <mvc:resources mapping="/css/**" location="/WEB-INF/css/" /> 23 <mvc:resources mapping="/images/**" location="/WEB-INF/images/" /> 24 <mvc:resources mapping="/assets/js/**" location="/WEB-INF/assets/js/" /> 25 <mvc:resources mapping="/assets/css/**" location="/WEB-INF/assets/css/" /> 26 <mvc:resources mapping="/assets/fonts/**" location="/WEB-INF/assets/fonts/" /> 27 <mvc:resources mapping="/view/**" location="/WEB-INF/view/" /> 28 </beans>
æ¤æ¶é¡¹ç®ç»æå¦ä¸ï¼
é
ç½® pom.xmlæä»¶ï¼å¼å
¥ä¾èµï¼
1 <dependencies> 2 <dependency> 3 <groupId>junit</groupId> 4 <artifactId>junit</artifactId> 5 <version>3.8.1</version> 6 <scope>test</scope> 7 </dependency> 8 <dependency> 9 <groupId>org.springframework</groupId> 10 <artifactId>spring-web</artifactId> 11 <version>4.2.4.RELEASE</version> 12 </dependency> 13 <dependency> 14 <groupId>org.springframework</groupId> 15 <artifactId>spring-webmvc</artifactId> 16 <version>4.2.4.RELEASE</version> 17 </dependency> 18 <dependency> 19 <groupId>org.springframework</groupId> 20 <artifactId>spring-core</artifactId> 21 <version>4.2.4.RELEASE</version> 22 </dependency> 23 <dependency> 24 <groupId>org.apache.geronimo.specs</groupId> 25 <artifactId>geronimo-servlet_2.5_spec</artifactId> 26 <version>1.2</version> 27 </dependency> 28 </dependencies>
å¨src/main/javaæä»¶å¤¹ä¸å建ç®å½ï¼com.practice.practice2.controller
顺便æä¹åçç½çbase-packgeè·¯å¾æ¹æï¼com.practice.practice2.*
å¨ç®å½ä¸å建TestControllerï¼
1 package com.practice.practice2.controller; 2 3 import javax.servlet.http.HttpServletRequest; 4 import javax.servlet.http.HttpServletResponse; 5 6 import org.springframework.stereotype.Controller; 7 import org.springframework.ui.ModelMap; 8 import org.springframework.web.bind.annotation.RequestMapping; 9 import org.springframework.web.servlet.ModelAndView; 10 11 @Controller 12 @RequestMapping(value = "practice/") 13 public class TestController { 14 15 @RequestMapping(value = "index") 16 public ModelAndView showIndex(HttpServletRequest request,HttpServletResponse response){ 17 ModelMap map = new ModelMap(); 18 String string = "Welcome to my page!"; 19 map.put("string", string); 20 return new ModelAndView("/index",map); 21 } 22 23 }
å¨WEB-INFç®å½ä¸å建viewæä»¶å¤¹
å¨è¯¥æä»¶å¤¹ä¸å建index.jspï¼
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!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=ISO-8859-1"> <title>Insert title here</title> </head> <body> ${string} </body> </html>
æ¤æ¶é¡¹ç®æºæä»¶ç®å½å¦ä¸ï¼
æpractice2é¡¹ç®æ¾å
¥tomcatï¼
å¯å¨ï¼æµè§å¨ä¸è¾å
¥ï¼http://localhost:8080/practice2/practice/index
æ¾ç¤ºå¦ä¸ï¼
æå»ºæåï¼