
spring boot
三笠爷
这个作者很懒,什么都没留下…
展开
-
备忘小知识点
ThreadLocalRandom.current() 多线程随机数 比random效率高 random内部是同步的有锁机制原创 2021-08-12 10:54:27 · 167 阅读 · 0 评论 -
spring 循环依赖
https://www.jianshu.com/p/8bb67ca11831https://www.cnblogs.com/zzq6032010/p/11406405.htmlhttps://www.pianshen.com/article/4112200143/https://www.imooc.com/article/34150原创 2020-12-30 16:56:06 · 122 阅读 · 0 评论 -
post 兼容application/x-www-form-urlencoded;charset=UTF-8 和json
@RequestParam,也有@RequestBody 不能同时使用可以使用HttpServletRequest 接收, public Map<String, Object> commonHttpRequestParamConvert(HttpServletRequest httpServletRequest) { Map<String, Object> result = new HashMap<>(16); try { .转载 2020-11-19 19:48:57 · 832 阅读 · 0 评论 -
validate 无处不在
3.可以在任何位置使用validate校验 rpc或内部service定义注解import java.lang.annotation.*;@Target({ElementType.TYPE, ElementType.METHOD, ElementType.PARAMETER})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @interface Validated { Class<?>[] value() .原创 2020-09-17 15:49:27 · 324 阅读 · 0 评论 -
spring boot 动态注入Bean
这是开发阿里云的rocketmq的动态注入Bean,增加订阅只需要在配置文件增肌rocket订阅即可(BeanDefinitionRegistry方式指定 初始化和销毁方法)public class ConsumerClient implements CommandLineRunner/*, BeanFactoryAware*/ { @Autowired private MqConfig mqConfig; @Autowired private Configura.原创 2020-07-07 11:12:20 · 974 阅读 · 0 评论 -
Springboot 优雅停止服务的几种方法
https://www.cnblogs.com/huangqingshi/p/11370291.html转载 2020-01-13 17:05:15 · 234 阅读 · 0 评论 -
spring 动态代理
Spring AOP的底层实现有两种方式:一种是JDK动态代理,另一种是CGLib的方式。一、基本概念JDK动态代理主要涉及java.lang.reflect包下边的两个类:Proxy和InvocationHandler。其中,InvocationHandler是一个接口,可以通过实现该接口定义横切逻辑,并通过反射机制调用目标类的代码,动态地将横切逻辑和业务逻辑贬值在一起。JDK动态代...原创 2019-09-10 14:48:18 · 190 阅读 · 0 评论 -
Spring Boot2 源码 run > refreshContext > registerBeanPostProcessors方法 (七)
注册bean的后置处理器,使得bean工厂可以修改bean的初始化过程,找到容器中所有实现BeanPostProcessor的类进行排序注册基本逻辑和上一章差不多先注册实现了PriorityOrdered接口的BeanPostProcessor,再注册实现了Ordered接口的的BeanPostProcessor,然后注册什么接口都没实现的BeanPostProcessor,最后注册实现...原创 2019-07-17 15:54:17 · 189 阅读 · 0 评论 -
Spring Boot2 源码 run > refreshContext > invokeBeanFactoryPostProcessors方法 (六)
11.5调用BeanFactoryPostProcessor各个实现类的方法先说明两个类的关系1.BeanFactoryPostProcessor:用来修改Spring容器中已经存在的bean的定义,使用ConfigurableListableBeanFactory对bean进行处理2.BeanDefinitionRegistryPostProcessor:继承BeanFactoryPo...原创 2019-07-04 10:01:56 · 279 阅读 · 0 评论 -
Spring Boot2 源码 run refreshContext 方法 (七)
11.6注册 BeanPostProcessor 的实现类(后置处理器)1.实现PriorityOrdered接口的BeanPostProcessor先全部找出来,然后排序后依次执行2.实现Ordered接口的BeanPostProcessor找出来,然后排序后依次执行3.没有实现PriorityOrdered和Ordered接口的BeanPostProcessor找出来并依次执行4.最...原创 2019-07-04 09:49:44 · 178 阅读 · 0 评论 -
Spring Boot2 源码 run refreshContext方法 (五)
11、刷新应用上下文刷新上下文内容比较多,一点一点往下看,首先是public void refresh() throws BeansException, IllegalStateException { synchronized (this.startupShutdownMonitor) { // 11.1 Prepare this context for refreshi...原创 2019-07-03 14:20:47 · 150 阅读 · 0 评论 -
Spring Boot2 源码 run prepareContext方法 (四)
10、准备应用上下文 private void prepareContext(ConfigurableApplicationContext context, ConfigurableEnvironment environment, SpringApplicationRunListeners listeners, ApplicationArguments applicationAr...原创 2019-07-02 17:25:54 · 145 阅读 · 0 评论 -
spring源码refresh()刷新容器详解
publicvoidrefresh()throwsBeansException,IllegalStateException{ synchronized(this.startupShutdownMonitor){ //Preparethiscontextforrefreshing. prepareRef...原创 2018-06-13 15:41:59 · 1622 阅读 · 0 评论 -
spring boot注册多个mongodb数据源
package com.bjsdzk.collector.config;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation....原创 2019-02-28 10:40:42 · 317 阅读 · 0 评论 -
Spring Boot2 源码 SpringApplication构造方法(一)
SpringApplication run方法 getRunListeners监听器本文采用2.1.3.RELEASE版本源代码做为参考SpringApplication 对象的 run 方法的源码和运行流程。 public static void main(String[] args) { SpringApplication.run(BjsdzkApiApplication....原创 2019-06-28 16:40:56 · 243 阅读 · 0 评论 -
Spring Boot2 源码 run getRunListeners方法 (二)
1.spring boot2 源码 SpringApplication构造方法SpringApplication继续run方法查看源码publicConfigurableApplicationContextrun(String...args){//1、创建并启动计时监控类StopWatchstopWatch=newStopWatch();...原创 2019-07-01 11:41:36 · 1348 阅读 · 0 评论 -
Spring Boot2 源码 run prepareEnvironment方法 (三)
6、根据运行监听器和应用参数来准备Spring环境private ConfigurableEnvironment prepareEnvironment( SpringApplicationRunListeners listeners, ApplicationArguments applicationArguments) { // Create and configure...原创 2019-07-01 15:07:05 · 211 阅读 · 0 评论