1.springBoot对JSP的支持

springBoot虽然支持JSP,但是官方不建议使用,下面是官方文档解释

When running a Spring Boot application that uses an embedded servlet container (and is packaged as an executable archive), there are some limitations in the JSP support.
With Jetty and Tomcat, it should work if you use war packaging. An executable war will work when launched with java -jar, and will also be deployable to any standard container. JSPs are not supported when using an executable jar.
Undertow does not support JSPs.
Creating a custom error.jsp page does not override the default view for error handling. Custom error pages should be used instead.

对应百度翻译:

当运行使用嵌入式servlet容器(并打包为可执行存档)的Spring Boot应用程序时,JSP支持存在一些限制。

有了Jetty和Tomcat,如果你使用战争包装,它应该可以工作。当使用java-jar启动时,一个可执行的war可以工作,并且可以部署到任何标准容器中。使用可执行jar时不支持JSP。

Undertow不支持JSP。

创建自定义错误。jsp页面不会覆盖错误处理的默认视图。应改用自定义错误页。

但是由于各种原因,我们在使用中还会使用springBoot+jsp的框架进行项目的开发,下面是搭建教程

2.搭建springBoot+JSP框架

1.使用IDEA搭建springBoot项目项目

因为idea对springBoot的有很好的支持,这里我就使用IDEA来进行教程的编写,还在用eclipse的童鞋,是时候学一下了(手动狗头)。

搭建如下图所示:

点击idea上的file->new->project

选择Spring Initializr(该方式是根据自己的需求通过网页创建一个压缩包下载到本地,简单快捷,也可以直接在浏览器输入https://start.spring.io/,进行项目的搭建,这种方式必须联网哦。

选择完成后点击next

 下面是选择一些需要的maven依赖(因为只是演示jsp项目的搭建这里我选择任何依赖)

项目名称和存放地址

搭建好的项目目录如图所示:

到此springboot的项目搭建完成,下面开始构建jsp页面。

2.springBoot项目集成jsp页面。

首先需要在maven的依赖文件pom.xml中加上对jsp支持的依赖(这里也需要联网才能下载依赖哦)

        <!--用于编译jsp--><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><!--servlet开启--><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId></dependency>

因为springBoot项目不存在webapp目录我们需要创建,创建结构如下

然后在idea中设置webapp路径

配置视图解析器,打开application.properties,配置视图

#项目名称
spring.application.name=springbootjsp
#项目访问名称,如果不配置直接访问bean就可以
#server.servlet.context-path=/springbootjsp
#端口
server.port=9090
#Spring boot视图配置
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
#静态文件访问配置
spring.mvc.static-path-pattern=/static/**

创建hello.jsp测试页面

代码

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%--Created by IntelliJ IDEA.User: testDate: 2022/2/7Time: 20:47To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body>hello!!!
</body>
</html>

创建编写测试类

代码:

package com.example.springbootjsp;import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@Controller
public class TestController {@RequestMapping("test")public String test(){//对应的jsp页面,在jsp下对的路径以及页面名称return "hello";}
}

启动项目测试

在浏览器中输入http://127.0.0.1:9090/test,如下图所示

项目创建成功!

需要注意的是 WEB-INF是是受保护的目录,不能直接访问这个页面,需要通过后台才能访问,如果需要直接访问页面,需要把页面放在web-inf外边。

结束,感谢观看

springBoot+JSP搭建项目相关推荐

  1. 实现以最快速度搭建springboot后台web项目并连通数据库实现控制层与服务层与dao层的select查询...

    背景 Servlet的出现 上世纪90年代,随着Internet和浏览器的飞速发展,基于浏览器的B/S模式随之火爆发展起来.最初,用户使用浏览器向WEB服务器发送的请求都是请求静态的资源,比如html ...

  2. Spring-Boot快速搭建web项目详细总结

    最近在学习Spring Boot 相关的技术,刚接触就有种相见恨晚的感觉,因为用spring boot进行项目的搭建是在太方便了,我们往往只需要很简单的几步,便可完成一个spring MVC项目的搭建 ...

  3. SpringBoot(一)_快速实战搭建项目

    现在在学习springboot 相关的知识,感觉真的很好用,用idea 进行开发,根据慕课网和纯洁的微笑的课程.进行总结下. 使用idea创建springboot项目 (1)单击 File | New ...

  4. java+spring+mysql配置_JAVA后台搭建(springboot+mybatis+mysql)项目搭建

    前言 上篇文章写了基本环境配置的搭建,接下来我们需要搭建项目了,项目搭建使用的IDEA,springboot项目的搭建非常快只需要几分钟,然后介绍MyBatis以及MySql的基本配置以及项目的Hel ...

  5. springboot jsp只能在webapp_Spring Boot 项目访问JSP

    前面文章提到了如何使用Spring Boot快速搭建项目,后来有小伙伴问我,项目中如何访问JSP页面呢?毕竟不是所有的项目都是前后端分离. 创建一个project,页面文件默认的是访问resource ...

  6. 搭建springboot+mybatis+freemarker项目

    1. 创建springboot web项目 先创建一个项目 选择maven项目,先什么都不勾,直接点击next groupid和artifactid可以随便填,然后点击next 点击finish fi ...

  7. 关于部署springboot+jsp项目时打jar包无法访问静态资源的问题

    [问题描述] 以往部署springboot+jsp项目时都是打一个war包,直接启动就ok了. 昨天突然想尝试一下打jar包部署,结果发现正常启动后,无法访问到静态资源,控制台也没有报错. [问题原因 ...

  8. 使用springboot和vue搭建项目

    文章目录 第一步,搭建vue项目 vue的安装 创建项目 springboot项目的创建 idea eclipse vue与springboot之间的交互 跨域问题 登录拦截问题 部署问题 sprin ...

  9. springboot或Maven项目多环境(dev、test、prod)搭建

    springboot或Maven项目多环境(dev.test.prod)搭建 简介:我们平常在开发时,通常一套程序,既用来测试,也用来开发甚至上线用的也是这一套.相信绝大部分开发人员,用的是git或者 ...

  10. 02_搭建项目(servlet+java bean+jsp的商城教程)

    搭建项目 数据库和表 项目包结构 jar包 工具类和配置文件 前台文件(html,css,js,img等静态资源) 1)数据库和表 新建数据库store,按照上一节分析的实体结构创建数据表并插入数据: ...

最新文章

  1. 项目经理应该具备的技能
  2. linux中crontab命令的基本用法
  3. IDEA Java Web 推送Tomcat
  4. 最大连续子矩阵和算法
  5. 武松买酒案例 理解网络资源的请求流程
  6. ubuntu yum安装_ubuntu 制作本地yum仓库
  7. 游戏开发之运算符重载(C++基础)
  8. PXE网络装机和kickstart无人值守
  9. 夜间灯光数据dn值_探讨DMSPOLS夜间灯光数据的校正
  10. python 恢复删除的文件_如何恢复已删除的python文件(一看就会的恢复软件)
  11. Project Management-软件开发之项目管理
  12. android多开技术,多开常见配置 - 技术交流 - 逍遥安卓论坛 - Powered by Discuz!
  13. 吉他指弹入门——日式指弹的pm技巧
  14. 随机子空间(RSM)
  15. 用python制作表情包图片拼接工具
  16. 找到数组里面缺失的数(C++(绝妙方法))
  17. 【图文动画详解原理系列】1.MySQL 索引原理详解
  18. Ubuntu - command checklist
  19. 年薪40W毕业生大厂面试题合集,学完之后你不会拿不到offer
  20. 2020.2.5普及C组 Hank比赛【纪中】【DP】

热门文章

  1. python中的stopwords_中文分词停止词stopwords词典,可下载
  2. Abaqus 2022安装教程
  3. TestNg框架源码解析
  4. 新疆财大计算机科学,新疆财经大学计算机科学与工程学院学生参加了多项专业赛事...
  5. 菲克扩散(第一)定律【Fick's (First) Law of Binary Diffussion】
  6. 达梦共享存储集群DMDSC-2节点部署手册
  7. webservice 完整视频教程
  8. 视频教程-webservice入门到精通(备java基础,xml,javaee框架)-Java
  9. Java实现SM2算法(国密算法)
  10. 使用Windows自带工具校验文件MD5