Springboot
文章平均质量分 72
springboot那点事
爱琴孩
扫盲+科普+解惑,愿天下程序员每天少掉头发
展开
-
@RefreshScope 动态刷新机制
一般在项目中,我们集成Nacos做统一配置管理,同时配置支持动态刷新,项目中都会用到@RefreshScope注解,这里和大家一起看看@RefreshScope实现动态刷新的原理。原创 2023-05-10 10:46:02 · 1831 阅读 · 0 评论 -
Spring boot日志配置
在 src/main/resources/下创建配置文件 logback-spring.xml。上面的配置引入了 spring boot 中 logback 的默认配置和 CONSOLE 追加器,并定义了 root 的日志级别为 info。原创 2023-07-01 19:58:47 · 4107 阅读 · 0 评论 -
@ConfigurationProperties 注解原理
注解是 SpringBoot 提供的一种更加便捷来处理配置文件中的属性值的方式,可以通过自动绑定和类型转换等机制,将指定前缀的属性集合自动绑定到一个Bean对象上。原创 2023-06-18 16:04:11 · 2165 阅读 · 0 评论 -
Spring boot相同配置属性优先级
2. 在项目的外部文件中指定的配置文件优先于 application.properties,即当外部文件中和 application.properties 中同时存在相同的配置项时,以外部文件中的配置为准。4. 在 application.properties 中配置的属性值优先级最低,也就是当其他方式均未指定相应的配置项时,会使用 application.properties 中指定的值。3. 配置文件中的属性值可以被环境变量所覆盖。对于不同的配置项,各自的优先级取决于其被读取的顺序以及使用的默认值等。原创 2023-06-17 14:05:28 · 793 阅读 · 0 评论 -
Spring Boot Actuator、Prometheus和Grafana监控实战
在图表编辑器的Visualization选项卡下,你可以自定义图表的显示方式和样式。Grafana提供了多种图表类型,如折线图、饼图、柱状图等。选择适合你需求的图表类型,并根据需要调整颜色、轴标签等显示设置。除了Spring Boot Actuator提供的默认Metrics之外,还可以根据实际需求,自定义收集应用程序的其他性能指标。例如,可以监控业务指标(如订单数、用户注册数等)或者应用程序的自定义组件。通过自定义Metrics,可以更全面地了解应用程序的运行状况和性能表现。转载 2023-06-11 19:34:41 · 2892 阅读 · 0 评论 -
springboot服务启动JMX监控
java应用部署下在生产环境,肯定是少不了监控的,比如说我们想要监控JVM的线程使用情况,内存使用情况等等。原创 2023-01-18 14:28:07 · 2424 阅读 · 0 评论 -
springboot读取resources目录下文件那点事
上面所谓的三种写法,其实本质上思路都是一样的,方法一中的classPathResource.getInputStream(),可以看下getInputStream()方法源码,其实就是一样的= null) {//这里其实就是方法二= null) {//这里其实就是方法三} else {}} else {return is;}}方法三中的this.getClass().getResourceAsStream,其实到getResourceAsStream方法里面去看}...原创 2022-08-06 15:04:02 · 899 阅读 · 0 评论 -
springboot中异步处理@Async小demo
前言我们日常开发中的请求,从Controller到Service再到Dao层,它是同步的,如果不考虑并行执行的话,一个执行过程需要等前面的执行完成之后才能执行,但是有些业务开发中,我们不需要等待前面的操作执行完成,或者说操作之间没有依赖关系,而这些操作本身很耗时,这时候我们完全没有必要去让这些操作同步执行,这样时间都被耗费在彼此的等待中,这时候异步操作就是很有必要了,它可以快速提升整个流程的执...原创 2019-06-23 17:29:46 · 783 阅读 · 0 评论 -
springboot项目启动后自动执行
前言在日常开发中,我们经常需要写一些简单的脚本,启动之后就自动执行相关的代码,比如:加载一些系统参数、完成初始化、预热本地缓存等。如何实现呢?方式一 ApplicationRunner可以通过实现ApplicationRurnner接口,重写里面的run方法@Componentpublic class ApplicationRunnerTest implements ApplicationRunner { private static final Logger LOGGER原创 2021-01-26 22:01:59 · 934 阅读 · 0 评论 -
springboot项目启动 java -jar详解
前言在日常开发中,我们启动springboot项目直接运行项目中的启动类就可以了。但是如果需要将jar包在linux服务器上部署,没有启动类又该怎么启动呢?肯定很多小伙伴会说,那不是很简单么,java -jar不就行了么?这里详细介绍下java -jar中一些常用命令参数配置。微服务启动中配置环境选择在微服务开发中,如果我们没有使用springcloud config来统一管理各个服务...原创 2019-06-02 17:46:31 · 15151 阅读 · 0 评论 -
SpringBoot 启动原理解析
前言SpringBoot为我们做的自动配置,确实方便快捷,但是对于新手来说,如果不懂SpringBoot内部启动原理,以后难免会吃亏。所以这里和大家一起来揭开SpringBoot的神秘面纱,让它不在神秘。正文我们开发任何一个Spring Boot项目,都会用到如下的启动类@SpringBootApplicationpublic class DemoApplication { ...转载 2018-10-27 20:25:43 · 197 阅读 · 0 评论 -
深入浅出springBoot starter机制
前言springBoot之所以这么火,众多starter的自动装配功能起了很大的作用。例如springBoot中集成redis,只需要pom.xml中引入spring-boot-starter-data-redis,配置文件中加入spring.redis.database等几个关键配置项即可,相比于传统的xml配置可以说是大大减少了集成的工作量,我们不需要在xml配置文件中去定义需要注入到容器...原创 2019-06-09 22:56:17 · 823 阅读 · 0 评论 -
springboot异步结果获取
前言前面简单介绍了springboot的异步,以及自定义线程池。这里再和大家一起学习下springboot异步中的结果获取。在实际项目中,我们可能需要获取异步回调的结果,这种结果获取,和同步获取肯定是不一样的。其实异步调用的获取结果也很简单,我们结合Future来实现,下面直接看代码。保存异步调用结果我们在异步任务执行完成之后,将结果保存在AsyncResult中,AsyncResul...原创 2019-06-30 16:17:55 · 2962 阅读 · 0 评论 -
springboot异步--自定义线程池
前言在前面,我们简单学习了Springboot中异步处理@Async小demo。前面的异步中,我们在需要异步的方法上加上@Async注解。@Async默认异步配置使用的是SimpleAsyncTaskExecutor,该线程池默认来一个任务创建一个线程,这种方式可能会在高并发场景下出现OOM。OutOfMemoryError:unable to create new native thread...原创 2019-06-30 15:47:33 · 1865 阅读 · 0 评论 -
springboot接口全局异常处理
前言记得很早之前,写过一篇关于springmvc全局异常处理总结springmvc异常统一处理。由于springmvc是传统的mvc框架,所以最终的异常是在项目的配置文件中配置error异常页面,这里再和大家一起总结下springboot项目中的全局异常处理。公司的项目都是前后端分离的,这里的统一异常处理是指接口的统一异常处理,返回对应的状态码,由前端或者客户端同学根绝约定好的状态做出相应的交互相应。避免直接将具体的异常信息直接抛给用户,下面给出具体的demo。接口返回包装类在日常开发中,我们通原创 2021-02-01 21:26:26 · 426 阅读 · 0 评论 -
Spring MVC 到 Spring Boot 的简化之路
背景从Servlet技术到Spring和Spring MVC,开发Web应用变得越来越简捷。但是Spring和Spring MVC的众多配置有时却让人望而却步,相信有过Spring MVC开发经验的朋友能深刻体会到这一痛苦。因为即使是开发一个Hello-World的Web应用,都需要我们在pom文件中导入各种依赖,编写web.xml、spring.xml、springmvc.xml配置文件等。...转载 2018-10-24 20:30:21 · 223 阅读 · 0 评论 -
Spring Boot与Spring Cloud是什么关系?
前言SpringBoot先于Spring Cloud问世。SpringBoot相当于脚手架,借助他可以快速搭建房子,它本身不具备任何功能属性,只是普通房间,没有其他任何功能。什么是Spring BootSpring Boot简化了基于Spring的应用开发,通过少量的代码就能创建一个独立的、产品级别的Spring应用。 Spring Boot为Spring平台及第三方库提供开箱即用的...转载 2018-09-08 21:28:56 · 143 阅读 · 0 评论