峰哥说技术:09-Spring Boot整合JSP视图

Spring Boot深度课程系列

峰哥说技术—2020庚子年重磅推出、战胜病毒、我们在行动

09  峰哥说技术:Spring Boot整合JSP视图

一般来说我们很少推荐大家在Spring boot中使用jsp作为模板,但是很多的同学可能会想了解,所以峰哥这里也给大家做一个简单的介绍,它不复杂。只是需要我们添加手动添加2个依赖,同时要编写Java配置类,自定义视图解析器。对于jsp的视图需要我们放到webapps下面,需要手工补全。给大家讲解一下。

1)创建一个Spring boot工程。手动添加2个依赖。

在pom.xml文件中添加如下的2个依赖。


<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

<dependency>

<groupId>org.apache.tomcat.embed</groupId>

<artifactId>tomcat-embed-jasper</artifactId>

</dependency>

<dependency>

<groupId>jstl</groupId>

<artifactId>jstl</artifactId>

<version>1.2</version>

</dependency>

2)创建 config包,编写Java配置类MvcConfig,它必须实现接口WebMvcConfigurer。同时实现一个方法。


@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    @Override
    public void configureViewResolvers(ViewResolverRegistry registry) {
        registry.jsp("/jsp/",".jsp");
    }
}

3)这里的@Configuration就是采用Java的方法做配置的注解,相等于我们原来在applicationContext.xml中进行配置一样的道理。这里的configureViewResolvers方法很显然就是配置我们的视图解析器,里面代码就是配置前缀和后缀。很显然我们必须创建一个文件夹jsp,它应该放在webapp文件夹下面。

4)补全webapp文件夹和jsp文件夹。补全的方法如下图所示:

在webapp下面创建jsp文件夹

5)编写创建包,编写Book实体类。


package com.java.chapter02jsp.entity;

public class Book {
    private Integer id;
    private String name;
    private String author;

public Book() {
    }

public Book(Integer id, String name, String author) {
        this.id = id;
        this.name = name;
        this.author = author;
    }

//getter和setter省略...
}

6)编写IndexController,编写代码。


package com.java.chapter02jsp.controller;

import com.java.chapter02jsp.entity.Book;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

import java.util.ArrayList;
import java.util.List;

@Controller
public class IndexController {
    @GetMapping("/index")
    public String index(Model model){
        List<Book> list=new ArrayList<>();
        Book book1=new Book(1,"罗贯中","三国演义");
        Book book2=new Book(2,"曹雪芹","红楼梦");
        Book book3=new Book(3,"吴承恩","西游记");
        Book book4=new Book(4,"施耐庵","水浒传");

list.add(book1);
        list.add(book2);
        list.add(book3);
        list.add(book4);
        model.addAttribute("books",list);
        return "index";
    }
}

7)编写index.jsp页面视图,放在jsp文件夹下面。


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<table border="1" cellspacing="1" cellpadding="1" width="500">
    <tr>
        <td>图书编号</td>
        <td>图书名称</td>
        <td>图书作者</td>
    </tr>
    <c:forEach var="book" items="${books}">
        <tr>
            <td>${book.id}</td>
            <td>${book.name}</td>
            <td>${book.author}</td>
        </tr>
    </c:forEach>
</table>
</body>
</html>

8)测试,在浏览器中输入http://localhost:8080/index

 

需要说明的是,我们这里并没有配置web.xml文件,在Spring boot中对jsp的支持是不需要该文件的,这里特别说明一下。

截止到今天峰哥带着大家把所有的视图都整合了一遍。对于一些主流的视图该怎么整合,相信各位小伙伴已经有了清楚的认识了。希望大家多写两遍。理清一下思路。Spring Boot里面关于视图的整合就这些,真的不难。

原文地址:https://www.cnblogs.com/027kgc/p/12424919.html

时间: 2024-10-08 09:28:17

峰哥说技术:09-Spring Boot整合JSP视图的相关文章

峰哥说技术:08-Spring Boot整合FreeMarker视图

Spring Boot深度课程系列 峰哥说技术—2020庚子年重磅推出.战胜病毒.我们在行动 08  峰哥说技术:Spring Boot整合FreeMarker视图 前面带着大家整合了Thymeleaf视图,今天我们继续聊聊关于视图整合的话题.FreeMarker这是一个相当老牌的开源的免费的模版引擎.通过 Freemarker 模版,我们可以将数据渲染成 HTML 网页.电子邮件.配置文件以及源代码等.Freemarker 不是面向最终用户的,而是一个 Java 类库,我们可以将之作为一个普通

spring boot整合jsp的那些坑(spring boot 学习笔记之三)

Spring Boot 整合 Jsp 步骤: 1.新建一个spring boot项目 2.修改pom文件 <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>        <depend

Spring boot整合jsp

这几天在集中学习Spring boot+Shiro框架,因为之前view层用jsp比较多,所以想在spring boot中配置jsp,但是spring boot官方不推荐使用jsp,因为jsp相对于一些模板引擎,性能都比较低,官方推荐使用thymeleaf,但是Spring boot整合jsp的过程已经完成,在这里记录一下. 这篇博文是在LZ上篇文章spring boot+mybatis整合基础上写的,开发工具仍然是Intellij idea.这篇文章的重点是Intellij idea的设置,否

Spring Boot 整合JSP之Hello World

Spring Boot 整合JSP之Hello World 前半部分译自https://hellokoding.com/spring-boot-hello-world-example-with-jsp/ 其实原文已经相当简单了. 本教程手把手教你如何使用SpringBoot 和 JSP来创建一个Hello World的web app样例程序. 你想要的 你所需要的 JDK 8+ or OpenJDK 8+ Maven 3+ 初始化项目结构和依赖 项目结构 ├── src │ └── main │

spring boot 整合jsp

Springboot引入Web模块后不能直接支持jsp,需要引入相应依赖和配置之后才能正常使用,否则会一直报404错误. 本文以IDEA为基础讲解如何配置: 1. 引入依赖 首先在pom.xml中添加jsp依赖: <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <dependency> <

spring boot 使用 jsp视图(巨坑)

添加依赖 <!-- https://mvnrepository.com/artifact/org.apache.tomcat.embed/tomcat-embed-jasper --> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <version>9.0.16<

峰哥说技术: 05-Spring Boot条件注解注解

Spring Boot深度课程系列 峰哥说技术—2020庚子年重磅推出.战胜病毒.我们在行动 05 峰哥说技术  Spring Boot条件注解 @EnableAutoConfiguration开启自动化配置,零配置就能运行,那么它的原理是什么?要理解这个,必须首先理解什么是条件注解.抛开 Spring Boot,我们来单纯的看看在 Spring 中条件注解的用法.首先我们来创建一个普通的 Maven 项目,然后引入 spring-context,如下 1)创建一个接口Food package

Spring Boot 整合 Shiro ,两种方式全总结!

在 Spring Boot 中做权限管理,一般来说,主流的方案是 Spring Security ,但是,仅仅从技术角度来说,也可以使用 Shiro. 今天松哥就来和大家聊聊 Spring Boot 整合 Shiro 的话题! 一般来说,Spring Security 和 Shiro 的比较如下: Spring Security 是一个重量级的安全管理框架:Shiro 则是一个轻量级的安全管理框架 Spring Security 概念复杂,配置繁琐:Shiro 概念简单.配置简单 Spring

spring boot 整合spring Data JPA+Spring Security+Thymeleaf框架(上)

最近上班太忙所以耽搁了给大家分享实战springboot 框架的使用. 下面是spring boot 整合多个框架的使用. 首先是准备工作要做好. 第一  导入框架所需的包,我们用的事maven 进行对包的管理. 以上的举例是本人的H5DS的真实的后台管理项目,这个项目正在盛情融资中,各位多多捧点人场.关注一下软件发展的动态,说不定以后就是您的生活不可或缺的软件哟. 点击打开链接.闲话少说.现在切入正题. 第二,写点配置文件 第三,spring data -设计一个简单的po关系,这里需要下载一