1. 程式人生 > >Springboot新增Jsp的支援

Springboot新增Jsp的支援

(1) 建立Maven project;
在這裡插入圖片描述
(2) 在pom.xml檔案新增依賴;

<!-- spring boot parent節點,引入這個之後,在下面和spring boot相關的就不需要引入版本了; -->
<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.4.1.RELEASE</version>
	</parent>
	<!-- 指定JDK的版本 -->
	<properties>
		<java.version>1.7</java.version>
	</properties>
	<dependencies>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<!-- Spring boot 熱部署 : 此熱部署會遇到 java.lang.ClassCastException 異常 -->
		<!-- optional=true,依賴不會傳遞,該專案依賴devtools;之後依賴myboot專案的專案如果想要使用devtools,需要重新引入 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-devtools</artifactId>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<scope>provided</scope>
		</dependency>
		
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>jstl</artifactId>
		</dependency>

		<!-- tomcat 的支援. -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.tomcat.embed</groupId>
			<artifactId>tomcat-embed-jasper</artifactId>
			<scope>provided</scope>
		</dependency>

	</dependencies>
	<!-- 這是springboot devtools的plugin -->
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<!--fork : 如果沒有該項配置,肯呢個devtools不會起作用,即應用不會restart -->
					<fork>true</fork>
				</configuration>
			</plugin>
		</plugins>
	</build>

(3) 配置application.properties支援jsp

# 頁面預設字首目錄
spring.mvc.view.prefix=/WEB-INF/jsp/
# 響應頁面預設字尾
spring.mvc.view.suffix=.jsp
# 自定義屬性,可以在Controller中讀取
application.hello=Hello Angel From application

(4) 編寫測試Controller

package com.springboot.controller;

import java.util.Map;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
 * Springboot新增JSP頁面的使用方式
 * @ClassName HelloController
 * @Description 
 * @Author Huang
 * @Date 2018年11月13日 下午7:30:38
 */
@Controller
public class HelloController {

	@RequestMapping("/hello")
	public String hello(Map data){
		data.put("msg", "這是測試jsp頁面的引數傳遞");
		return "index";
	}
}

(5) 編寫JSP頁面
在該目錄下建立index.jsp檔案
在這裡插入圖片描述

<%@ page language="java" contentType="text/html; charset=UTF-8"
    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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
	${msg}
</body>
</html>

(6) 編寫啟動類App.java

package com.springboot.app;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
/**
 * 程式的啟動類
 * @ClassName App
 * @Description 
 * @Author Huang
 * @Date 2018年11月13日 下午7:39:09
 */
@SpringBootApplication
@ComponentScan(basePackages = "com.springboot")
public class App {
	public static void main(String[] args) {
		SpringApplication.run(App.class, args);
	}
}

測試地址輸入:http://localhost:8080/hello
在這裡插入圖片描述