项目搭建
第一步:创建SpringBoot项目
这里省略
第二步:添加依赖pom
不需要单独定义版本号,避免冲突。
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
第三步:创建jsp存放路径
在main目录下与resources目录同级创建webapp/WEB-INF/jsp
目录。不要直接放到resources目录下,会报404。
webapp目录没有小蓝点时,项目右键选择Open Module Settings
选中modules,在web模块右键添加Web
将webapp目录添加到Web Resource Directories
,最后点确定即可。
第四步:创建jsp文件
在jsp目录下创建index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
This is JSP!
</body>
</html>
如果jsp目录下右键没有创建jsp选项,检查步骤三中,webapp是否设置为Web Resource Directories
。
第五步:配置文件application.yml
添加配置项
spring:
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
第六步:编写Controller
注意不要使用@RestController
,不要加@ResponseBody
会直接将返回序列化为字符串。
package com.dangdang.pintuanadmin.web.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HomeController {
@RequestMapping(value = {"/", "/index"})
public String home() {
return "/index";
}
}
第七步:搭建完成,验收
启动项目,访问http://localhost:8080/
避坑指南
访问jsp打开方式为下载,而不是浏览器打开
检查是否添加pom依赖,参考项目搭建第二步。
访问jsp报错404
- 检查target目录下是否有创建的jsp文件。如果没有,执行
mvn clean package
,重新编译打包。 - 检查jsp文件路径,直接放到
resources
目录或者resources/static
目录访问不到,参考项目搭建步骤三。 - 如果为多模块,需要运行设置工作目录
$MODULE_WORKING_DIR$