首先新建一可以正常启动spring boot项目
https://blog.csdn.net/qq_43560721/article/details/104653470
1.jsp
项目总结构
pom文件添加依赖
<!-- jasper -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<!-- jstl -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
新建包webapp->WEB-INF->jsp,pojo,controller,(都是在相应位置右击鼠标)
新建class->User,userController
package com.example.demo.pojo;
public class User {
private Integer id;
private String name;
public User() {
super();
// TODO Auto-generated constructor stub
}
public User(Integer id, String name) {
super();
this.id = id;
this.name = name;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + "]";
}
}
package com.example.demo.controller;
import java.util.ArrayList;
import java.util.List;
import com.example.demo.pojo.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class userController {
@RequestMapping("hello")
public String hello(ModelMap map) {
List<User> userList = new ArrayList<>();
userList.add(new User(1,"小小舍"));
userList.add(new User(2,"xxs"));
map.put("userList", userList);
return "main";
}
}
新建jsp
<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2020/3/17 0017
Time: 17:06
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
<meta charset="utf-8">
<title>Title</title>
</head>
<body>
<table border="1" align="center" width="50%">
<tr>
<td>用户编号</td>
<td>用户姓名</td>
</tr>
<c:forEach items="${userList }" var="u">
<tr>
<td>${u.id }</td>
<td>${u.name }</td>
</tr>
</c:forEach>
</table>
</body>
</html>
在src/main/resources目录下找到application.properties配置文件添加配置
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
选中项目,然后点击鼠标右键选择Open Module Settiongs项目属性配置画面,确认配置没有问题,我的是默认ok的。
如果没有web需点击左上角的“+”,创建一下再选中web
找到启动类,运行即可。
在浏览器输入http://localhost:8080/hello
可访问到jsp页面内容
可能出现错误
检查一下自己的application.properties配置是否和自己设置文件层一致。
2.freemarker
项目总结构
pom文件添加依赖
<!-- freemarker -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
</dependency>
<!-- jstl -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
在src/main/resources目录下找到application.properties配置文件添加配置
# 不写也能正常运行,最好加上,有的版本不加就404
spring.freemarker.template-loader-path=classpath:/templates/
spring.freemarker.suffix=.ftl
pojo
package cn.xxs.springbootf.pojo;
public class User {
private Integer id;
private String name;
public User() {
super();
// TODO Auto-generated constructor stub
}
public User(Integer id, String name) {
super();
this.id = id;
this.name = name;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + "]";
}
}
userController
package cn.xxs.springbootf.controller;
import cn.xxs.springbootf.pojo.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.ArrayList;
import java.util.List;
@Controller
public class userController {
@RequestMapping("/hello")
public String hello(ModelMap map) {
List<User> userList = new ArrayList<>();
userList.add(new User(1,"小小舍"));
userList.add(new User(2,"xxs"));
map.put("userList", userList);
return "freemarker/main";
}
}
main.ftl
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<table border="1" align="center" width="50%" bgcolor="#ffb6c1">
<tr>
<td>用户编号</td>
<td>用户姓名</td>
</tr>
<#list userList as u>
<tr>
<td>${u.id }</td>
<td>${u.name }</td>
</tr>
</#list>
</table>
</body>
</html>
启动启动类即可
可能出现错误
注意检查以下几个地方
3.Thymeleaf
项目总结构
pom文件添加依赖
<!-- thymeleaf -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</dependency>
<!-- jstl -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
userController
package cn.xxs.springbootttt.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class userController {
@RequestMapping("user")
public String user(Model model) {
model.addAttribute("msg","这是一个Thymeleaf ^-^");
return "user";
}
}
user.html
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<span th:text="${msg}"></span>
</body>
</html>
运行启动类即可