- 博客(36)
- 收藏
- 关注
原创 02-SpringApplication.run
/ 初始构造时加载了 系统属性(systemProperties jvm属性配置)系统环境变量(systemEnvironment)// 放到最后 优先级最低// 解决属性匹配 _ , - , 驼峰 均能匹配到数据// 配置获取优先级// 默认属性名完全一样才能获取到配置。
2024-05-09 15:33:42 398
原创 07-HandlerMapping和HandlerAdapter
Bean@Bean@Bean@Component@Override// 404@Autowired@Override@Override// 返回null 不会渲染视图@Overridereturn -1;
2024-05-06 15:20:31 315
原创 06-异常处理
局部异常处理器-ModelAndView局部异常处理器-嵌套异常局部异常处理器-带参全局异常处理器TomcatTomcat默认异常页面启动服务
2024-04-30 10:22:45 281 1
原创 01-DispatchServlet和RequestMapping
*** 自定义参数注解:用于将请求头中的token参数解析出来并放入方法入参(参数解析器)*//*** 自定义方法返回值注解 用户测试自定义方法返回值处理器*//*** @desc 继承RequestMappingHandlerAdapter,重新invokeHandlerMethod方法* 因为此方法是protected的,外部无法调用 继承后修改为public便于测试*/@Override/**
2024-04-25 10:32:15 386 1
原创 16-入坑:实现了SmartInitializingSingleton却不执行
SmartInitializingSingleton是spring的扩展点之一,主要用于在Spring容器启动完成时进行扩展操作,即afterSingletonsInstantiated()。接口的bean的作用域必须是单例,afterSingletonsInstantiated()才会触发。问题代码:代码中实现了spring提供的SmartInitializingSingleton接口,并实现了afterSingletonsInstantiated方法,但是却不执行。
2024-04-24 11:45:05 1006
原创 15-事件
Bean// 配置自定义的事件发送器// GenericApplicationListener具备判断事件类型的能力// 收集事件监听器@OverrideSystem.out.println("当前事件监听器为:" + applicationListener + ", 能够处理的事件类型为:" + interfaceEventType);// 对事件进行包装 添加事件类型判断@Override// 是否支持某时间类型 eventType为当前的事件类型@Override。
2024-04-23 14:50:34 218
原创 11-FactoryBean
如果存在当前bean的FactoryBean, spring认为诸如依赖注入、初始化、Aware等这些生命阶段都应该有FactoryBean种处理, 所以即使这里配置了都不会生效。
2024-04-18 21:00:47 293
原创 10-循环依赖
总结下 Spring 解决循环依赖的思路:在创建单例 Bean 时,会把该 Bean 的工厂函数的匿名类对象放入三级缓存中的 singletonFactories 中。然后在填充属性时,如果出现循环依赖依赖本 Bean,必然执行之前放入的工厂函数的匿名实现,如果该 Bean 无需 AOP 的话,工厂函数返回的就是原 Bean 对象;如果该 Bean有 AOP 的话,也有可能是被某些 BBP 处理 AOP 之后的代理对象,会放入二级缓存中的 earlySingletonObjects 中。
2024-04-18 13:53:10 614
原创 09-AOP
实例化 -> () -> 依赖注入 -> 初始化 -> (初始化之后:没有循环依赖实例化后,依赖注入之前(有循环依赖) 暂存于二级缓存依赖注入和初始化不应该被增强,即还是原对象调用。
2024-04-17 13:35:54 622
原创 03-BeanFactoryPostProcessor
Override// 正规写法应该获取所有@Configuration的类@Override测试@Override// 方法参数值注入// 一般@Bean的bean名字都是取方法名@Override测试@Override/*** 这里BeanName不能使用mapperFactoryBeanDefinition* 因为同名Bean会被覆盖。
2024-04-09 14:34:27 417
原创 02-ApplicationContext
Data--相当于 AnnotationConfigUtils.registerAnnotationConfigProcessors(beanFactory);此功能加载一些内置后处理器--> <!--相当于 AnnotationConfigUtils.registerAnnotationConfigProcessors(beanFactory);此功能加载一些内置后处理器--> <!--
2024-04-08 13:14:35 408
原创 07-线程池
7.1 自定义线程池![image.png](https://img-blog.csdnimg.cn/img_convert/2e68c2b0a1b4f3c2c734c9dbd20d97e7.png#averageHue=#fdfcef&clientId=uf663d050-93f7-4&errorMessage=unknown error&from=paste&height=407&id=u1b98b89f&name=image.png&orig
2023-03-15 11:12:25 139
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人