Home | 簡體中文 | 繁體中文 | 雜文 | 打賞(Donations) | ITEYE 博客 | OSChina 博客 | Facebook | Linkedin | 知乎專欄 | Search | Email

第 6 章 Spring MVC

目錄

6.1. Maven
6.2. Spring Boot Quick start
6.2.1. pom.xml
6.2.2. Controller
6.3. Spring MVC configuration
6.4. Tomcat
6.5. Thymeleaf
6.5.1. Maven pom.xml
6.5.2. Spring 配置
6.5.3. controller
6.5.4. HTML5 Template
6.6. 整合 Mybatis
6.6.1. pom.xml
6.6.2. properties
6.6.3. dataSource
6.6.4. SqlSessionFactory
6.6.5. Mapper 掃瞄
6.6.6. Mapper 單一class映射
6.6.7. Service
6.6.8. 測試實例
6.7. Properties
6.7.1. 載入*.properties檔案
6.7.2. @Value 註解
6.7.3. @PropertySource 註解
6.8. @Controller
6.8.1. @RequestMapping
6.8.1.1. @RequestMapping("/")
6.8.1.2. 映射多個URL
6.8.1.3. headers
6.8.2. @ResponseBody
6.8.2.1. 直接返回HTML
6.8.3. RequestMapping with Path Variables - @PathVariable
6.8.3.1. URL 參數傳遞
6.8.3.2. URL 傳遞 Date 類型
6.8.3.3. 處理特殊字元
6.8.4. RequestMapping with Request Parameters - @RequestParam
6.8.4.1. HTTP GET
6.8.4.2. HTTP POST
6.8.5. @ModelAttribute
6.8.6. ModelAndView
6.8.6.1. 變數傳遞
6.8.6.2. ModelMap 傳遞多個變數
6.8.6.3. redirect
6.8.6.4. ArrayList
6.8.6.5. HashMap
6.8.6.6. 傳遞對象
6.8.6.7.
6.8.7. @Scheduled
6.8.8. HttpServletRequest / HttpServletResponse
6.9. Spring4 Restful
6.9.1. pom.xml
6.9.2. web.xml
6.9.3. springframework.xml
6.9.4. RestController
6.9.5. POJO
6.9.6. 測試
6.9.7. RestTemplate
6.9.7.1. GET
6.9.7.2. POST
6.9.7.3. PUT
6.9.7.4. Delete
6.9.7.5. 在控製器中完整實例
6.9.8. HTTP Auth
6.9.8.1. Client
6.10. Using Spring’s form tag library
6.10.1. css
6.10.1.1. cssClass
6.10.1.2. cssStyle
6.10.1.3. cssErrorClass
6.10.2. cssClass
6.11. FreeMarker
6.12. FAQ
6.12.1. o.s.web.servlet.PageNotFound
6.12.2. HTTP Status 500 - Handler processing failed; nested exception is java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
6.12.3. 同時使用 Thymeleaf 與 JSP
6.12.4. 排除靜態內容
6.12.5. HTTP Status 406

Spring MVC 有兩種啟動模式,一種是傳統Tomcat,需要配置很多XML檔案。另一種方式是採用 Spring Boot 需要些一個Java程序,不需要寫xml檔案,這個程序會幫助你處理啟動所需的一切,並且採用嵌入方式啟動 Tomcat 或者 Jetty.

兩種方式各有優缺點,Tomcat 方式配置繁瑣,但是可以使用虛擬機,同一個IP地址使用不同域名訪問,出現不同的內容。而Spring Boot一個應用一個容器一個連接埠,比不得不通過連接埠來區分應用。

6.1. Maven

		
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.example</groupId>
	<artifactId>demo</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>demo</name>
	<description>Demo project for Spring Boot</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.3.0.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>


</project>