前言
说起java web开发就不得不提jsp,作为一门老技术,虽然springboot官方也不推荐使用jsp了,但是博主为了知识的完备性,还是简单的使用下。
springboot默认对jsp的支持不是很友好,而对一些模板支持的很好,所以大家挑选技术时慎重,没有技术包袱的话还是使用模板吧。
创建项目
添加依赖
pom.xml:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
添加配置
application.yml:
spring:
mvc:
view:
suffix: .jsp
prefix: /WEB-INF/jsp/
完善
目录结构
我们在src/main下新增目录webapp/WEB-INF/jsp,用来放jsp文件,至于为什么这么建目录,开发过java web的人对这个目录应该很熟悉,习惯使然。 index.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>jsp demo</title>
</head>
<body>
Hello World, jsp
</body>
</html>
controller/JspController:
package com.mrcoder.sbjsp.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class JspController {
@GetMapping("/")
public String index() {
return "index";
}
}
运行
项目地址
https://github.com/MrCoderStack/SpringBootDemo/tree/master/sb-jsp
https://gitee.com/MrCoderStack/SpringBootDemo/tree/master/sb-jsp
Tip
如果你是独立的一个springboot项目,以上的操作已经是能运行成功的,但是如果你是一个多模块的项目,也就是先创建了maven空项目,再
那么上面的代码运行的话会报404错误(博主就是多模块的), 所以我们需要更改IDEA的一点设置
此时,运行就不会报错了。