如何将JSP/Servlet项目转换为Spring Boot项目
作者:David 发布时间:2023-06-19 16:23:06
创建Spring Boot应用
在基于Spring来重构JSP应用之前,我们先引入Spring Boot,使之成为一个Spring Boot应用。你只需要在原来的代码基础上,增加简单的配置和少量的代码即可引入Spring Boot,整个过程5分钟就能完成。
这里我们使用Maven来管理依赖,因为我们需要增加Spring Boot相关的依赖。也可以在Eclipse或者IntelliJ中创建一个新的Maven项目。
在POM文件中加入Spring Boot相关的配置。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.2.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>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
拷贝原有代码
如果你创建了新的Spring Boot项目,将原项目中src/main/java
目录下的所有代码,拷贝至Spring Boot项目中的src/main/java
。
新建一个代码目录(【New】->【Source Folder】),命名为src/main/webapp
,将原项目中WebContent
目录下的所有内容拷贝至该目录内。
增加Spring Boot 代码
增加一个Spring Boot应用的启动类,这里不涉及任何业务逻辑。这里我们给BlogApplication
增加了一个@ServletComponentScan
标注,这会让应用去扫描标注为@WebServlet
的Servlet类,并进行相应的初始化工作。
package com.tianmaying;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;
@SpringBootApplication
@ServletComponentScan
public class BlogApplication {
public static void main(String[] args) throws Exception {
SpringApplication.run(BlogApplication.class, args);
}
}
注意:Servlet类所在的包路径必须是BlogApplication
所在的包路径的子路径才能被扫描到,否则需要通过basePackages
属性指定Servlet类所在的包。:
自动部署与刷新
自动部署
为了让开发更加得心应手,我们进一步优化IDE,使得Web应用可以自动重启,页面内容修改时网页可以自动刷新,这可以极大地提高我们的开发体验和开发效率。
为了让Spring Boot在需要重启时,能够自动进行,我们只需要在POM文件中增加以下依赖。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
</dependencies>
增加了这段依赖之后,可以实验以下。比如,我们修改以下BlogApplication.java
的代码,可以看到控制台中,内嵌的Web服务器自动重启了。
浏览器自动刷新
我们在修改代码之后,一般情况下都是重新回到浏览器中,通过鼠标操作或者通过F5对页面进行刷新。这种操作虽然时间很短,但是无数次的出现依然会占用我们很多时间。我们可以通过给浏览器安装livereload插件,这样就可以解放F5键了。以后只要有代码修改,切回浏览器就能马上看到效果了。
访问http://livereload.com/extensions/,根据自己的浏览器类型,下载响应的插件扩展程序即可。
来源:https://www.tianmaying.com/tutorial/jsp-spring-boot
猜你喜欢
- SQL Server有几个版本都在使用中——4.2, 6.0, 6.5, 7.0, 2000,以及2
- 速查表是帮你记住东西的有效工具。Web设计师和开发者经常使用的快捷键简表会使他们在网上的工作效率大大提高。事实上,速查表就是来帮助我们把日常
- Cookies,有些人喜欢它们,有些人憎恨它们。但是,很少有人真正知道如何使用它们。现在你可以成为少数人中的成员-可以自傲的Cookie 大
- 它在Lynx里也会运行得很好:<%@ Language=VBScript %><HTML><
- 本文主要概括安装时提示有挂起的操作、收缩数据库、压缩数据库、转移数据库给新用户以已存在用户权限、检查备份集、修复数据库等操作技巧。1.挂起操
- css里关于浏览器的兼容问题一直困惑着我们初级的css用户(高手可直接绕过),这里想根据我前段时间拜读的李超的书籍《css网站布局实录》里学
- JavaScript 读取、删除 Cookie 的函数* * WebFXCookie class */ fun
- 目录:分析和设计组件编码实现和算法用 Ant 构建组件测试 JavaScript 组件我们走到哪儿了?前两期思考了太多东西,你是否已有倦意?
- 在曾经的 淘宝UED 招聘 中有这样一道题目:“使用纯CSS实现未知尺寸的图片(但高宽都小于200px)在200px的正方形容器中水平和垂直
- 在一次ASP程序中不能正常连接MSSQL出现出错信息如下:以下为引用的内容:HTTP/1.1 200 OK S
- 对于个人站长来说,如何能使自己的网站与众不同、充满个性,一直是不懈努力的目标。除了尽量提高页面的视觉效
- 原文地址:30 Days of Mootools 1.2 Tutorials - Day 9 - Input Filterin
- 加号+, 是字符串优先.并且从左向右计算. 就是运算前后两个值,只要有一个是字符串,就会将其中一个非字符串的试图转换成字符串.
- ASP 能快速执行你的 * 页,但你还可以通过紧缩代码和数据库连接以使它们执行更快。这是一篇关于怎样精简代码和Asp 特征以获得最快执行速度
- 这两天终于忍不住的去实验了一下,为什么网页的字体有时会显示成超级无敌难看的宋体呢?其实宋体不难看,难看的只是把它放在Leopard下,没有点
- 记录应用程序的操作日志可以使用数据库、文本文件、XML文件等。我这里介绍的是使用 XML 文件记录操作日志。我觉得使用 XML 记录操作日志
- 最近在研究品牌如何演绎,当然,看的时候没有忘记本行,分析了一下他们的交互设计~~路易威登LV上图采用胶片展示多组信息——大片展示品牌渲染。利
- PHP addcslashes() 函数实例在字符 "W" 前添加反斜杠:<?php $str = addcsla
- 最近在改一个页面,原来的编码是gb2312,为了国际化,改成utf-8,开始时浏览还是正常。因为电脑偶感小恙,于是恢复了系统,这才发现改后的
- 现在大部分网站都使用asp+access构建,这样的话通过下载access数据库简单就可以对网站进行破坏! 而很多的网站都不太重