【视频&交流平台】
http://study.163.com/course/introduction.htm?courseId=1004329008&utm_campaign=commission&utm_source=400000000155061&utm_medium=share
http://study.163.com/course/introduction.htm?courseId=1004638001&utm_campaign=commission&utm_source=400000000155061&utm_medium=share
https://gitee.com/happyangellxq520/spring-boot
http://412887952-qq-com.iteye.com/blog/2321532
在springboot + devtools(热部署)【从零开始学Spring Boot】
章节中我们已经介绍了spring boot中使用devtools的基本步骤以及一些注意事项了,本节针对于网友的一些问题,在总结出一些注意点,以及在实际开发中一些重要的地方。
问题的提出:
在devtools中在编写一个普通的程序时,都是能够运行的很正常的,但是和其它进行一起运行的时候,可能就会出现各种各样的问题了,比如:登录之后,然后修改了一些代码之后devtools就restart,然后重新一访问又重新登录了。
(1)devtools restart session设置为restart之后依然存在
如果restart之后session失效的话,那么就会造成需要重新登录问题,这个问题很好解决,只需要在application.properties添加如下配置:
server.session.persistent=true
注意在spring boot 1.3.3 / 1.4.0默认就是true。
(2)修改模板文件restart不生效
模板文件不生效主要是由于模板有缓存,只要把缓存给关闭即可,配置application.properties文件:
#模板引擎:thymeleaf;
spring.thymeleaf.cache=false
#Javascript 语言的模板引擎:Mustache
spring.mustache.cache=false
#模板引擎:velocity
spring.velocity.cache=false
#groovy模板
spring.groovy.template.cache
(3) causing ClassCastException while getting from cache.
当在使用缓存的时候,可能就会抛出如上的异常信息了,这是devtools已知的限制。当缓存条目被反序列化时,对象无法附加到合适的类加载器。
有一些方法可以修复这样的问题:
(1)当运行在开发环境的时候,禁用缓存,配置spring.cache.type=NONE。
(2)使用一个不同的缓存管理器(假如你正在使用spring boot 1.3,你能够强制使用simple cache manager通过在application-dev.properties配置spring.cache.type,并且使用在你的IDE中启用dev profile)
(3)在应用程序类加载器配置缓存,这种比较复杂,需要新建META-INF/spring-devtools.properties
文件进行配置,支持restart.exclude. and restart.include.
例如:
restart.include.companycommonlibs=/mycorp-common-[\\w-]+\.jar
restart.include.projectcommon=/mycorp-myproj-[\\w-]+\.jar
好了使用devtools还是有好多坑的,还是希望官方在这方面能够多下功夫,比如如果能支持指定某一些类不重新加载等等的这样的配置或者整个加载器能够编写的更加强大就好了。
视频&交流平台:
http://study.163.com/course/introduction.htm?courseId=1004329008
http://412887952-qq-com.iteye.com/blog/2321532
相关推荐
赠送jar包:spring-boot-devtools-2.2.8.RELEASE.jar; 赠送原API文档:spring-boot-devtools-2.2.8.RELEASE-javadoc.jar; 赠送源代码:spring-boot-devtools-2.2.8.RELEASE-sources.jar; 赠送Maven依赖信息文件:...
赠送jar包:spring-boot-devtools-2.0.6.RELEASE.jar; 赠送原API文档:spring-boot-devtools-2.0.6.RELEASE-javadoc.jar; 赠送源代码:spring-boot-devtools-2.0.6.RELEASE-sources.jar; 赠送Maven依赖信息文件:...
赠送jar包:spring-boot-devtools-2.0.6.RELEASE.jar; 赠送原API文档:spring-boot-devtools-2.0.6.RELEASE-javadoc.jar; 赠送源代码:spring-boot-devtools-2.0.6.RELEASE-sources.jar; 赠送Maven依赖信息文件:...
3. **远程调试**:要在远程服务器上使用`devtools`,需要配置`spring-boot-devtools.remote.secret`,并开启`spring-boot-devtools.remote.auto-reconnect`。 **五、总结** Spring Boot的`devtools`模块极大地优化...
- **devtools.html** 和 **devtools-background.html** 可能是Vue.js-devtools的主界面和后台脚本文件,分别处理用户交互和扩展的后台逻辑。 - **manifest.json** 是浏览器扩展的重要配置文件,包含了扩展的元数据...
java运行依赖jar包
而工具的使用则能提高开发效率,例如IDEA中的Spring Boot DevTools,提供热部署功能,方便开发过程中快速测试。 总结,Spring Boot的过滤器和监听器提供了强大的自定义处理能力,开发者可以根据需求灵活地扩展功能...
这个压缩包“Vue.js-devtools-5.3.3.rar”包含了编译完成的Vue.js-devtools版本,可以直接在谷歌浏览器(Chrome)中作为扩展程序使用,无需额外的编译步骤。 Vue.js 是一个流行的前端JavaScript框架,它提供了组件...
赠送jar包:spring-boot-devtools-2.2.8.RELEASE.jar; 赠送原API文档:spring-boot-devtools-2.2.8.RELEASE-javadoc.jar; 赠送源代码:spring-boot-devtools-2.2.8.RELEASE-sources.jar; 赠送Maven依赖信息文件:...
java运行依赖jar包
Vue.js 是一款流行的前端JavaScript框架,它以组件化开发、数据双向绑定和简易上手而闻名。...通过直接导入“Vue.js-devtools_v5_new.crx”文件,无需复杂的配置,即可立即开始使用,让开发工作变得更加轻松。
12. **DevTools(开发工具)**:Spring Boot DevTools 提供了开发者友好的特性,如热部署、实时文件更改检测等,加速开发流程。 通过这个项目,你可以学习到如何构建一个完整的Spring Boot应用,包括设置依赖、编写...
为了实现在不重启服务器的情况下对Spring Boot应用进行修改,可以使用Spring Boot DevTools模块。该模块提供了热部署的功能,即当项目代码发生改变并保存时,Spring Boot会自动重启应用,从而立即反映代码变更的效果...
Vue.js-devtools 是一款强大的开发者工具,专为Vue.js应用程序提供调试支持。这个压缩包 "Vue.js-devtools_5.1.1.rar" 包含了该工具的版本5.1.1,用于帮助开发者深入理解并优化Vue应用的运行时行为。 Vue.js-...
java运行依赖jar包
Vue.js devtools 是一款用于 Vue.js 应用程序开发的浏览器扩展工具,它可以帮助开发者更轻松地调试和分析 Vue.js 应用。这个扩展提供了诸如组件树、状态管理器、事件触发、性能分析等功能,使开发者可以更好地理解和...
1. 添加开发者工具集:使用 `spring-boot-devtools` 添加开发者工具集。 2. 启动 Spring Boot 的方式:可以在 IDEA 中直接启动、使用 `mvn` 命令来启动、使用 `mvn` 编译然后在 class 目录生成 jar 包,使用 Java ...
7. 零代码冗余:Spring Boot鼓励使用“约定优于配置”的原则,避免了大量的XML配置,使得代码更加简洁。 8. 热重启:Spring Boot DevTools提供热部署功能,当源代码发生变化时,应用可以快速重启,提高了开发效率。...
总结来说,"Spring Boot web 访问"涵盖了创建一个基础的Spring Boot Web应用,配置访问静态资源,使用Spring Boot DevTools进行快速开发,以及处理中文乱码问题。这些都是Spring Boot入门开发者需要掌握的基本技能,...
在 SpringBoot-Learning 压缩包中,你可能找到包含这些知识点的示例代码,从基础的“Hello World”到复杂的微服务配置,逐步深入学习 Spring Boot 的使用。通过实践这些代码,你可以更好地理解 Spring Boot 的工作...