工具:idea 2019.1
gradle: 5.2.1
SpringBoot 2.1.4
1. 创建一个SpringBoot项目,初始包为web
2. 目录结构
我们可以发现和我们之前创建的SpringMVC的web项目不一样 ,缺少了webapp目录。
SpringBoot建议使用template来进行模板管理,但是他又不支持jsp的页面管理。如果直接使用template去访问jsp页面,我在上篇博客,最后就写了,他会当成是HTML页面进行访问
SpringBoot本来是不建议使用JSP作为模板的,那么我们硬是想要支持一下的话,就需要自己单独引入包了。
第一个是 tomcat-embed-jasper以及他的相关包,另一个是JSTL标签库。如果只是访问JSP页面的话,只需要引入第一个包就行了
引入包这里需要注意的是,一旦某个包没有引入进来,浏览器就会访问失败。
3. 到maven的中央仓库网站上去查找相应的包
.
可以到自己喜欢的仓库里面查找那两个包,我比较喜欢找maven的中央仓库去找依赖,因为阿里的看不太懂。下载的话还是使用国内的镜像速度会比较快
4.复制gradle的依赖到idea中
选择的是gradle的依赖,不要选择错了
4.引入依赖后导入的包
// https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl
compile group: 'javax.servlet.jsp.jstl', name: 'jstl', version: '1.2'
// https://mvnrepository.com/artifact/org.apache.tomcat.embed/tomcat-embed-jasper
compile group: 'org.apache.tomcat.embed', name: 'tomcat-embed-jasper', version: '9.0.17'
6. 构建webapp目录
因为相较于以前的web项目,缺少了webapp文件夹,所以我们需要构建webapp文件夹
选择file下面的project structure
选择“+”,然后选择web,弹出来的页面是添加web.xml文件的。顺带也把webapp目录给建好了。在这个项目中,我们不需要web.xml文件。
SpringBoot的DispatcherServlet默认拦截的是所有的路径,也就是“/”
选中那一项,删掉它,然后重新点击"+" 号重新新建一个
7. 添加页面,以及controller包
index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>$Title$</title>
</head>
<body>
<h1> SpringBootDemo03</h1>