SpringBoot 使用JSP开发Web项目

简介: 本文目录1. 背景2. 修改pom.xml引入JSP依赖3. 添加webapp目录存放JSP文件4. 注册视图解析器5. 创建一个控制器6. 创建网页7. 测试

1. 背景

Spring Boot目前开发Web应用这块,使用Restful风格做前后端分离实现的应该是主流了。不过也有很多朋友们使用模板引擎,常用的如Jsp/ Thymeleaf/ Freemarker。


注意Spring Boot官方已经不推荐使用JSP了,确实操作起来也比较麻烦,但是由于JSP用户体量还是比较大的,所以还是简单演示下。


2. 修改pom.xml引入JSP依赖

添加依赖项,开启SpringBoot对Web项目及JSP的支持


 <!-- 添加web开发功能 -->

 <dependency>

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

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

 </dependency>

 <!--内嵌的tomcat支持模块 -->

 <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>


3. 添加webapp目录存放JSP文件

手工添加src/main/webapp及子目录如下,同时目录下放一个index.jsp用于测试。注意该目录是一个Source Folder源代码目录,不是普通文件夹目录。


如下图:

image.png

4. 注册视图解析器

在配置类内添加视图解析器


@SpringBootApplication

public class SpringbootTemplatedemoApplication {

public static void main(String[] args) {

 SpringApplication.run(SpringbootTemplatedemoApplication.class, args);

}

@Bean//注册视图解析器

public InternalResourceViewResolver setupViewResolver() {

 InternalResourceViewResolver resolver = new InternalResourceViewResolver();

 resolver.setPrefix("/WEB-INF/jsp/");//自动添加前缀

 resolver.setSuffix(".jsp");//自动添加后缀

 return resolver;

}

}


5. 创建一个控制器

创建控制器,用于跳转到index.jsp页面


@Controller

public class JspController {

@RequestMapping("/jsp") // 访问路径

public String jsp(Model model) {

 model.addAttribute("name", "猫哥");//携带属性值

 return "index";//跳转页面

}


6. 创建网页

创建index.jsp页面,取出后端穿过来的属性值


<%@ page language="java" contentType="text/html; charset=UTF-8"

   pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

</head>

<body>

${name}

</body>

</html>


7. 测试

直接访问http://127.0.0.1:1004/jsp,即可输出网页,完成!

相关文章
|
12月前
|
算法 Java Go
【GoGin】(1)上手Go Gin 基于Go语言开发的Web框架,本文介绍了各种路由的配置信息;包含各场景下请求参数的基本传入接收
gin 框架中采用的路优酷是基于httprouter做的是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。
806 4
|
安全 Java API
Java Web 在线商城项目最新技术实操指南帮助开发者高效完成商城项目开发
本项目基于Spring Boot 3.2与Vue 3构建现代化在线商城,涵盖技术选型、核心功能实现、安全控制与容器化部署,助开发者掌握最新Java Web全栈开发实践。
936 1
|
缓存 JavaScript 前端开发
鸿蒙5开发宝藏案例分享---Web开发优化案例分享
本文深入解读鸿蒙官方文档中的 `ArkWeb` 性能优化技巧,从预启动进程到预渲染,涵盖预下载、预连接、预取POST等八大优化策略。通过代码示例详解如何提升Web页面加载速度,助你打造流畅的HarmonyOS应用体验。内容实用,按需选用,让H5页面快到飞起!
|
JavaScript 前端开发 API
鸿蒙5开发宝藏案例分享---Web加载时延优化解析
本文深入解析了鸿蒙开发中Web加载完成时延的优化技巧,结合官方案例与实际代码,助你提升性能。核心内容包括:使用DevEco Profiler和DevTools定位瓶颈、四大优化方向(资源合并、接口预取、图片懒加载、任务拆解)及高频手段总结。同时提供性能优化黄金准则,如首屏资源控制在300KB内、关键接口响应≤200ms等,帮助开发者实现丝般流畅体验。
|
JavaScript Java 微服务
现代化 Java Web 在线商城项目技术方案与实战开发流程及核心功能实现详解
本项目基于Spring Boot 3与Vue 3构建现代化在线商城系统,采用微服务架构,整合Spring Cloud、Redis、MySQL等技术,涵盖用户认证、商品管理、购物车功能,并支持Docker容器化部署与Kubernetes编排。提供完整CI/CD流程,助力高效开发与扩展。
1269 64
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
1201 0
|
Java 应用服务中间件 Maven
传统maven项目和现在spring boot项目的区别
Spring Boot:传统 Web 项目与采用 Spring Boot 项目区别
993 0
传统maven项目和现在spring boot项目的区别
|
XML Java 数据库连接
创建springboot项目的基本流程——以宠物类别为例
创建springboot项目的基本流程——以宠物类别为例
397 0
创建springboot项目的基本流程——以宠物类别为例
|
存储 机器学习/深度学习 IDE
SpringBoot 项目与被开发快速迁移|学习笔记
快速学习 SpringBoot 项目与被开发快速迁移
SpringBoot 项目与被开发快速迁移|学习笔记
|
Java Spring
自定义SpringBoot项目的启动Banner
``Banner``是``SpringBoot``框架一个特色的部分,其设计的目的无非就是一个框架的标识,其中包含了版本号、框架名称等内容,既然``SpringBoot``为我们提供了这个模块,它肯定也是可以更换的这也是``Spring``开源框架的设计理念。