当前位置: 首页 > news >正文

域外网站上海做网站的公司官网

域外网站,上海做网站的公司官网,建筑设计怎么学,网页设计网站首页代码平时使用SpringBoot开发应用时#xff0c;修改代码后需要重新启动才能生效。如果你的应用足够大的话#xff0c;启动可能需要好几分钟。有没有什么办法可以加速启动过程#xff0c;让我们开发应用代码更高效呢#xff1f;今天给大家推荐一款SpringBoot官方的热部署工具spri… 平时使用SpringBoot开发应用时修改代码后需要重新启动才能生效。如果你的应用足够大的话启动可能需要好几分钟。有没有什么办法可以加速启动过程让我们开发应用代码更高效呢今天给大家推荐一款SpringBoot官方的热部署工具spring-boot-devtools修改完代码后可快速自动重启应用spring-boot-devtools简介 SpringBoot官方开发工具如果你的应用集成了它即可实现热部署和远程调试。实现原理 使用该工具应用为什么启动更快了主要是因为它使用了两种不同的类加载器。基础类加载器用于加载不会改变的类比如第三方库中的类重启类加载器用于加载你应用程序中的类。当应用程序启动时重启类加载器中的类将会被替换掉这就意味着重启将比冷启动更快热部署 接下来我们将集成devtools来演示下热部署功能。首先需要在项目的pom.xml文件中添加devtools的依赖dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-devtools/artifactIdoptionaltrue/optional /dependency为了方便测试我们在项目中添加了如下测试接口/*** Created by macro on 2021/3/25.*/ Api(tags  TestController, description  SpringBoot Dev Tools测试) Controller RequestMapping(/test) public class TestController {ApiOperation(测试修改)RequestMapping(value  /first, method  RequestMethod.GET)ResponseBodypublic CommonResult first() {String message  返回消息;return CommonResult.success(null,message);} }然后启动项目启动成功后通过Swagger访问接口返回结果如下访问地址http://localhost:8088/swagger-ui.html{code: 200,message: 返回消息,data: null }由于在项目构建时devtools才会自动重启项目而IDEA默认并没有使用自动构建此时我们可以修改应用启动配置设置当IDEA失去焦点时自动构建项目修改Controller中的代码只要修改下message变量即可/*** Created by macro on 2021/3/25.*/ Api(tags  TestController, description  SpringBoot Dev Tools测试) Controller RequestMapping(/test) public class TestController {ApiOperation(测试修改)RequestMapping(value  /first, method  RequestMethod.GET)ResponseBodypublic CommonResult first() {String message  返回消息已修改;return CommonResult.success(null,message);} }失去焦点后等待项目自动构建此时访问接口出现404问题{timestamp: 2021-03-29T07:09:05.41500:00,status: 404,error: Not Found,message: No message available,path: /test/first }由于devtools检测时间和IDEA的编译所需时间存在差异当IDEA还没编译完成devtools就已经重启应用了导致了这个问题修改application.yml配置文件添加如下配置即可spring:devtools:restart:poll-interval: 2squiet-period: 1s此时再次访问测试接口显示内容如下修改后的代码已经被自动应用了。{code: 200,message: 返回消息已修改,data: null }远程调试 devtools除了支持热部署之外还支持远程调试接下来我们把应用部署到Docker容器中然后试试远程调试由于SpringBoot默认打包不会包含devtools所以我们需要先修改下pom.xmlplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfiguration!--打包时不排除Devtools--excludeDevtoolsfalse/excludeDevtools/configuration /plugin接下来需要application.yml文件添加devtools的远程访问密码spring:devtools:remote:secret: macro666接下来把项目打包成Docker镜像然后使用如下命令运行起来docker run -p 8088:8088 --name mall-tiny-devtools \ --link mysql:db \ -v /etc/localtime:/etc/localtime \ -v /mydata/app/mall-tiny/logs:/var/logs \ -d mall-tiny/mall-tiny-devtools:1.0-SNAPSHOT添加一个启动配置修改启动类为org.springframework.boot.devtools.RemoteSpringApplication配置信息具体如下启动该配置控制台输出如下结果表示远程连接成功2021-03-29 15:49:50.991  INFO 7848 --- [           main] o.s.b.devtools.RemoteSpringApplication   : Starting RemoteSpringApplication v2.3.0.RELEASE on DESKTOP-5NIMJ19 with PID 7848 2021-03-29 15:49:51.003  INFO 7848 --- [           main] o.s.b.devtools.RemoteSpringApplication   : No active profile set, falling back to default profiles: default 2021-03-29 15:49:51.664  WARN 7848 --- [           main] o.s.b.d.r.c.RemoteClientConfiguration    : The connection to http://192.168.5.78:8088 is insecure. You should use a URL starting with https://. 2021-03-29 15:49:52.024  INFO 7848 --- [           main] o.s.b.d.a.OptionalLiveReloadServer       : LiveReload server is running on port 35729 2021-03-29 15:49:52.055  INFO 7848 --- [           main] o.s.b.devtools.RemoteSpringApplication   : Started RemoteSpringApplication in 2.52 seconds (JVM running for 4.236)接下来我们再次修改下Controller中的测试代码只要修改下message变量即可/*** Created by macro on 2021/3/25.*/ Api(tags  TestController, description  SpringBoot Dev Tools测试) Controller RequestMapping(/test) public class TestController {ApiOperation(测试修改)RequestMapping(value  /first, method  RequestMethod.GET)ResponseBodypublic CommonResult first() {String message  返回消息远程调试;return CommonResult.success(null,message);} }远程调试如果自动构建的话会导致远程服务频繁重启此时我们可以使用IDEA手动构建在项目的右键菜单中可以找到构建按钮构建成功后可以发现远程服务会自动重启并应用修改后的代码访问测试接口返回如下信息{code: 200,message: 返回消息远程调试,data: null }总结 虽说使用SpringBoot官方的devtools可以进行热部署但是这种方式更像是热重启如果你想要更快的热部署体验的话可以使用JRebel。往期推荐SpringBoot实现Excel导入导出好用到爆POI可以扔掉了如何给SpringBoot配置轻松加密MyBatis原生批量插入的坑与解决方案
http://www.sadfv.cn/news/229252/

相关文章:

  • 分销平台网站建设如何打造网站
  • 宜昌商城网站建设阳江房产网签
  • 怎么给网站做备案做视频网站什么平台好
  • 怎样提高网站转化率网站接入服务提供商
  • 免费空间网站怎么做的建设银行移动门户网站
  • 网站里添加百度地图企业展厅设计公司哪家好怎么样
  • 网站推广站群晖wordpress只能访问首页
  • 找人做彩票网站有哪些平面设计师必看的网站
  • 网站友情链接购买网站dns
  • 网站平台建设所需开发工具seo上海培训
  • asp.net网站开发 pdf网址信息查询
  • 文本文档写入代码做网站网站定制设计价目表
  • 网站开发翻译站长之家域名查询
  • 很有风格的网站有哪些二百块做网站
  • 网站建设大型企业跨境电商一件代发货源平台
  • 微网站下载资料怎么做亳州公司做网站
  • 响应式网站例子wordpress使用json
  • seo网站推广的主要目的是什么如何做电影下载网站
  • 网站图片素材下载全屏网站设计技巧
  • 电子商务网站建设主管的策划书南通网站关键字优化
  • 东莞企业网站设计公司淘宝客如何建立自己的网站
  • 怎么用ps做网站首页背景图片本周新闻热点
  • 淮南微信网站建设河北网络推广平台
  • 建设银行网站怎么短信转账东莞seo排名收费
  • 单位网站建设方案网站的页脚什么做
  • 网站建设公司盈利青岛网站建设模板下载
  • 手机网站建设专家查询企业邮箱
  • 广州网站优化流程如何做网站
  • 郑州旅游网站设计网络营销整合营销
  • 网站运营公司哪家效果好网站降权怎么救