前提条件
- 知道并且熟悉
maven
技术 - 学习过jsp页面视图技术
- 了解熟悉spring mvc技术
整合
1.导入相关包
因为springboot官方并不希望程序员使用jsp技术,所以springboot-web启动器里面也就没有提供jsp有关的jar包,因此我们需要自动导入
<!-- jstl表达式支持包 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!-- jsp引擎 -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>9.0.38</version>
</dependency>
2.配置application.properties
application文件需要放在classpath根目录下,在maven项目中对应的就是src/main/resources
内容如下
# jsp文件所在路径
spring.mvc.view.prefix=/WEB-INF/jsp/
# jsp文件的后缀名
spring.mvc.view.suffix=.jsp
熟悉springmvc技术的小伙伴看这两句就一定会有点印象,在mvc里面用来配置jsp文件路径映射
3.实现
controller
package cn.liuhao.jsp.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import cn.liuhao.jsp.pojo.User;
@Controller
public class UserController {
@RequestMapping("userlist")
public ModelAndView UserList(ModelAndView view) {
List<User> list = new ArrayList<User>();
list.add(new User(1, "张三", 90));
list.add(new User(2, "李四", 80));
list.add(new User(3, "王五", 70));
view.addObject("list", list);
return view;
}
}
user
package cn.liuhao.jsp.pojo;
/**
*
* user 实体类
*
* @author admin
*
*/
public class User {
private int id;
private String name;
private double score;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
public User(int id, String name, double score) {
super();
this.id = id;
this.name = name;
this.score = score;
}
public User() {
super();
}
}
App启动类
package cn.liuhao.jsp;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
jsp页面
注意
1.使用jstl表达式一定要导入包 <%@taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core”%>
jsp要放在servletContext目录下,在maven中对应的目录就是src/main/webapp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>hello world</h1>
<table border="1" align="center" width="50%">
<tr>
<td>id</td>
<td>name</td>
<td>score</td>
</tr>
<c:forEach items="${list }" var="i" >
<tr>
<td>${i.id}</td>
<td>${i.name}</td>
<td>${i.score}</td>
</tr>
</c:forEach>
</table>
</body>
</html>