springboot整合jsp

前言

本篇文章主要介绍的是springboot整合jsp。

Jsp简介

JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。

JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。

GitHub源码链接位于文章底部。

项目结构


如果没有webapp目录,则需要在Java与resources的同级目录下创建。并将其设置为web资源的文件夹。菜单栏中File-Project Structure

pom文件中添加依赖:
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.3.RELEASE</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </dependency>
        <!-- SpringBoot 外部tomcat支持 -->
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
        </dependency>
    </dependencies>
application.yml文件中配置:
server:
  port: 8080

spring:
  mvc:
    view:
      prefix: /WEB-INF/jsp/
      suffix: .jsp

根据这里的配置,我们需要在webapp目录下创建WEB-INF文件夹,在WEB-INF文件夹下创建jsp文件夹存放jsp页面。

在刚刚创建的目录中新建一个index.jsp文件

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
Jsp测试页面
</body>
</html>

JspController中添加接口:

@Controller
public class JspController {
    @RequestMapping("/index")
    public String index() {
        return "index";
    }
}

通过启动类启动程序后,访问localhost:8080/index 接口,返回index.jsp视图。

启动后访问jsp报404的原因:

1.yml文件中配置的jsp路径与jsp页面在项目中的路径不一致

spring:
  mvc:
    view:
      prefix: /WEB-INF/jsp/
      suffix: .jsp

要将webapp目录设置为web资源文件夹,设置方法文章上面有提过;在webapp文件夹下创建WEB-INF文件夹,在WEB-INF文件夹下创建jsp文件夹,在jsp文件夹下存放jsp文件。

2.在多模块的情况下,需要手动设置工程的Working directory

3.springboot打包方式为jar也会报404,改为war即可。

本文GitHub源码:https://github.com/lixianguo5097/springboot/tree/master/springboot-jsp

CSDN:https://blog.csdn.net/qq_27682773
简书:https://www.jianshu.com/u/e99381e6886e
博客园:https://www.cnblogs.com/lixianguo

posted @ 2020-03-19 10:24  小小的bug  阅读(1037)  评论(0编辑  收藏  举报