玩转 SpringBoot 2 快速整合 | JSP 篇

1,789

前言

JavaServer Pages(JSP)技术使Web开发人员和设计人员能够快速开发和轻松维护利用现有业务系统的信息丰富的动态Web页面。

作为Java技术系列的一部分,JSP技术可以快速开发独立于平台的基于Web的应用程序。JSP技术将用户界面与内容生成分开,使设计人员能够在不改变底层动态内容的情况下更改整体页面布局。

对开发人员的好处如果您是熟悉HTML的网页开发人员或设计人员,则可以:

  • 使用JSP技术而不必学习Java语言:您可以使用JSP技术而无需学习如何编写Java scriplet。尽管不再需要scriptlet来生成动态内容,但仍然支持它们以提供向后兼容性。
  • 扩展JSP语言:Java标记库开发人员和设计人员可以使用“简单标记处理程序”扩展JSP语言,该标记处理程序使用新的,更简单,更清晰的标记扩展API。这刺激了可用的可插拔,可重用标记库的数量不断增加,从而减少了编写功能强大的Web应用程序所需的代码量。
  • 轻松编写和维护页面: JavaServer Pages标准标记库(JSTL)表达式语言现已集成到JSP技术中,并已升级为支持功能。现在可以使用表达式语言而不是scriptlet表达式。

——以上内容摘自自 Oracle 关于JSP的介绍 链接地址:www.oracle.com/technetwork…

虽然现在 JSP基本已经淘汰,但是很多公司的老的项目还是在用 JSP 作为页面,通过阅读该篇博客,你将了解到如何在SpringBoot 中快速使用 JSP 简单操作。

SpringBoot 使用 JSP 操作步骤

第一步在 pom.xml 添加支持 JSP 视图的依赖,具体代码如下:

<!-- 非必选 -->        
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>
<!-- Provided 编译和测试的时候使用-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>
<!-- 对jsp的支持的依赖 -->
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
    <scope>provided</scope>
</dependency> 


第二步在 application.properties 配置文件中添加 JSP 相关配置信息,具体配置信息如下:

server.port=8080
server.servlet.context-path=/sbe

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

第三步创建 src/main/webapp 目录并在该目录创建 JSP。

添加JSP文件的路径位置如下图所示:

图片图片

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>
   ${welcome}
</body>
</html>

第四步创建访问 JSP 页面的 Controller。

package cn.lijunkui.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping()
public class JspController {
    
    @RequestMapping("/helloworld")
    public String toJps(Model model) {
        model.addAttribute("welcome", "不建议使用jsp");
        return "welcome";
    }
    
}

测试

在游览器输入访问 JSP 页面的 Controller 的 URL:http://localhost:8080/sbe/helloworld 进行测试,测试结果如下:

图片

小结

SpringBoot 使用 JSP 步骤如下:

  1. 引入 spring-boot-starter-tomcat 依赖 并且 scopeprovided
  2. 在 application.properties 配置文件中将视图设置成jsp
  3. 创建src/main/webapp 目录下创建 WEB-INF 目录并在该目录下创建 JSP 文件
  4. 创建访问 JSP 的 Controller

代码示例

具体代码示例请查看我的 GitHub 仓库 springbootexamples 中模块工程名: spring-boot-2.x-jsp 进行查看

Github:github.com/zhuoqianmin…如果您对这些感兴趣,欢迎 star、或点赞给予支持!转发请标明出处!

参考文献

github.com/spring-proj…