关键词:
SpringBoot初始教程之热部署(五)
1.介绍
SpringBoot提供了一个maven插件来支持热部署spring-boot-devtools
,仅仅是在开发环境中使用,如果已经打包了就无法使用。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
2.快速开始
完整pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.1.RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>springboot-5</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.4.1.RELEASE</version>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
</project>
基本配置就已经介绍了,使用上非常简便,修改完代码只需要重新编译即可。但是总的来说这种方式并不快,只是比重启快一些而已没有太大的速度提升
编译后会重新加载一遍,如果喜欢热部署推荐使用 JRebel这个有个人免费版本。
3.高级特性
如果你不想编译,可以指定监控目录一旦目录文件改变,就会触发重新加载
server:
port: 8080
spring:
devtools:
restart:
additional-paths:
src/main/java/com/start
本文代码
https://git.oschina.net/wangkang_daydayup/SpringBoot-Learn/tree/master
springboot-5
springboot之热部署
... 热部署:当发现程序修改时自动启动应用程序。springboot使用的是spring-boot-devtools是一个为开发者服务的一个模块。其原理用了classLoader其中一个加载不变的类,另一个restartClassLoader加载变得类。devtools会监听classpath下的... 查看详情
1.springboot之热部署
1.springboot热部署1.1.springloadedspringloaded可以实现修改类文件的热部署.下载地址:springloaded安装单击RunConfigurations...在Arguments标签页的vmarguments中填入如下内容,注意下面指定的springloaded路径:-javaagent:F:sortingDatamavenRepositoriesMa 查看详情
springboot2.0之热部署原理
所谓的热部署:比如项目的热部署,就是在应用程序在不停止的情况下,实现新的部署原理:实用类加载器(classloader重新读取字节码文件到jvm内存)如何纯手写一个热部署功能: 1、监听class文件是否发生改变 版本号、... 查看详情
nginx之热部署(代码片段)
nginx作为一个反向代理、负载均衡服务器,必须具备高可用的特点,因此nginx支持热部署。nginx的热部署和其并发模型有着密不可分的关系。说白了,就是因为master进程的关系。当通知ngnix重读配置文件的时候,master进程会进行语... 查看详情
springboot初始教程之redis集中式session管理(代码片段)
SpringBoot初始教程之Redis集中式Session管理(四)1.介绍有关Session的管理方式这里就不再进行讨论,目前无非就是三种单机Session(基于单机内存,无法部署多台机器)、基于Cookie(安全性差)、基于全局的统一Session管理(redis、mysql)... 查看详情
springboot初始教程之redis集中式session管理(代码片段)
SpringBoot初始教程之Redis集中式Session管理(四)1.介绍有关Session的管理方式这里就不再进行讨论,目前无非就是三种单机Session(基于单机内存,无法部署多台机器)、基于Cookie(安全性差)、基于全局的统一Session管理(redis、mysql)... 查看详情
springboot初始教程之项目结构(代码片段)
SpringBoot初始教程之项目结构1简介SpringBootmakesiteasytocreatestand-alone,production-gradeSpringbasedApplicationsthatyoucan“justrun”.WetakeanopinionatedviewoftheSpringplatformandthird-partylibrariessoyoucangetst 查看详情
springboot初始教程之项目结构(代码片段)
SpringBoot初始教程之项目结构1简介SpringBootmakesiteasytocreatestand-alone,production-gradeSpringbasedApplicationsthatyoucan“justrun”.WetakeanopinionatedviewoftheSpringplatformandthird-partylibrariessoyoucangetst 查看详情
springboot初始教程之日志处理(代码片段)
SpringBoot初始教程之日志处理(二)1.介绍SpringBoot默认是采用logback进行日志处理、Logback是由log4j创始人设计的又一个开源日志组件。Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback-class... 查看详情
springboot初始教程之日志处理(代码片段)
SpringBoot初始教程之日志处理(二)1.介绍SpringBoot默认是采用logback进行日志处理、Logback是由log4j创始人设计的又一个开源日志组件。Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback-class... 查看详情
springboot初始教程之统一异常处理(代码片段)
SpringBoot初始教程之统一异常处理(三)1.介绍在日常开发中发生了异常,往往是需要通过一个统一的异常处理处理所有异常,来保证客户端能够收到友好的提示。SpringBoot在页面发生异常的时候会自动把请求转到/error,Spr... 查看详情
springboot初始教程之统一异常处理(代码片段)
SpringBoot初始教程之统一异常处理(三)1.介绍在日常开发中发生了异常,往往是需要通过一个统一的异常处理处理所有异常,来保证客户端能够收到友好的提示。SpringBoot在页面发生异常的时候会自动把请求转到/error,Spr... 查看详情
springboot初始教程之servletfilterlistener配置(代码片段)
SpringBoot初始教程之Servlet、Filter、Listener配置(七)1.介绍通过之前的文章来看,SpringBoot涵盖了很多配置,但是往往一些配置是采用原生的Servlet进行的,但是在SpringBoot中不需要配置web.xml的因为有可能打包之后是一个jar包... 查看详情
springboot初始教程之测试(代码片段)
SpringBoot初始教程之测试(八)1.介绍在为参加工作之前也写过测试用例,当时主要是针对外包项目的,其实总的来说主要是用来跑数据当做main方法使用,但基本不经常写,随着工作年限的增长。渐渐的写了很多测试... 查看详情
springboot初始教程之测试(代码片段)
SpringBoot初始教程之测试(八)1.介绍在为参加工作之前也写过测试用例,当时主要是针对外包项目的,其实总的来说主要是用来跑数据当做main方法使用,但基本不经常写,随着工作年限的增长。渐渐的写了很多测试... 查看详情
springboot初始教程之springboot-metrics监控(代码片段)
SpringBoot初始教程之SpringBoot-Metrics监控(十)1.介绍Metrics基本上是成熟公司里面必须做的一件事情,简单点来说就是对应用的监控,之前在一些技术不成熟的公司其实是不了解这种概念,因为业务跟技术是相关的当业务庞... 查看详情
springboot初始教程之springboot-metrics监控(代码片段)
SpringBoot初始教程之SpringBoot-Metrics监控(十)1.介绍Metrics基本上是成熟公司里面必须做的一件事情,简单点来说就是对应用的监控,之前在一些技术不成熟的公司其实是不了解这种概念,因为业务跟技术是相关的当业务庞... 查看详情
springboot初始教程之数据库连接池(druid)(代码片段)
SpringBoot初始教程之数据库连接池(druid)(六)1.介绍Druid是一个JDBC组件库,包括数据库连接池、SQLParser等组件。DruidDataSource是最好的数据库连接池。SpringBoot支持任何一种数据库链接池的配置,在这里用druid作为例子进行讲解2.... 查看详情