[JAVA]SpringBoot整合Jsp
1.首先idea快速构建一个springboot项目。
我们需要手动添加WEB-INF这些文件夹。
2.配置视图解析
application.properties
spring.mvc.view.prefix=/WEB-INF/jsp/ spring.mvc.view.suffix=.jsp server.port=8081
3.编写一个实体类,用户传数据。
package xyz.xioaxin12.springboot.student;
public class Student {
    private Integer id;
    private String name;
    private int age;
    public Student() {
    }
    public Student(Integer id, String name, int age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }
    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;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age='" + age + '\'' +
                '}';
    }
}
4.controller视图层
注意注解是@Controller,可以直接返回一个视图,由于已经设置了视图的”前后缀”,return便是返回到WEB-INF/jsp/index.jsp页面。
package xyz.xioaxin12.springboot.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import xyz.xioaxin12.springboot.student.Student;
import java.util.ArrayList;
import java.util.List;
@Controller
public class JspContreller {
    @RequestMapping("/show")
    public String Show(Model model){
        List<Student> students = new ArrayList<>();
        students.add(new Student(1,"小信",33));
        students.add(new Student(2,"小田",25));
        students.add(new Student(3,"小夏",19));
        students.add(new Student(4,"小方",23));
        model.addAttribute("student",students);
        return "index";
    }
}
5.jsp页面的编写
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <table border="1" width="600px" style="margin: auto;text-align: center">
        <tr>
            <th>id</th>
            <th>姓名</th>
            <th>年龄</th>
        </tr>
        <c:forEach items="${student}" var="s">
            <tr>
                <td>${s.id}</td>
                <td>${s.name}</td>
                <td>${s.age}</td>
            </tr>
        </c:forEach>
    </table>
</body>
</html>
用到了jsp中的jstl,所以我们需要提前在pom.xml中引入下列依赖。
        <!-- jstl -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
        </dependency>
        <!-- jasper -->
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <scope>provided</scope>
        </dependency>
6.查看
浏览器地址:http://localhost:8081/show
补充:关于webapp文件的生成。idea在构建springboot项目中,是没有这个文件的,我们可以按照下图直接生成。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 xiaoxin1218@qq.com
文章标题:[JAVA]SpringBoot整合Jsp
文章字数:583
本文作者:周信
发布时间:2019-10-24, 00:41:35
最后更新:2023-05-03, 10:25:35
原始链接:http://zx21.xyz/2019/10/24/JAVA-SpringBoot整合Jsp/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。



 
            