
Spring
文章平均质量分 83
Spring知识及源码解析
zxfhahaha
这个作者很懒,什么都没留下…
展开
-
【Spring】Spring整合Mybatis核心原理分析
Spring整合Mybatis核心原理分析1.3.2版本Mybatis的注册逻辑:实现ImportBeanDefinitionRegistrar接口,重写其registerBeanDefinitions方法 :注册mapper接口,并将接口声明为FactoryBean,设置拦截方法,生成代理类。参考1.3.2版本通过@MapperScan导入了MapperScannerRegistrar类MapperScannerRegistrar类实现了ImportBeanDefinitionRegistra原创 2021-02-22 23:05:19 · 179 阅读 · 0 评论 -
【Spring】面试问题整理
Spring面试问题整理IOC循环依赖IOC谈谈对spring ioc的理解spring ioc主要就是控制反转和依赖注入控制反转:把依赖注入:循环依赖如何解决循环依赖: 用三级缓存为什么要用三级缓存解决循环依赖因为用三级缓存可以保证两个代理对象能够相互拿到循环依赖对普通的对象的相互依赖 用两级缓存就可以解决...原创 2021-02-22 12:22:40 · 217 阅读 · 1 评论 -
【Spring注解】Spring源码总结
Spring源码总结原创 2021-01-14 17:29:50 · 158 阅读 · 0 评论 -
【Spring注解】Spring容器创建 refresh()源码解析
Spring容器创建过程BeanFactory预准备prepareRefresh()obtainFreshBeanFactory()prepareBeanFactory(beanFactory)postProcessBeanFactory(beanFactory)invokeBeanFactoryPostProcessors当我们执行这一句就是容器创建的过程AnnotationConfigApplicationContext applicationContext= new AnnotationConfi原创 2021-01-13 22:53:15 · 225 阅读 · 1 评论 -
【Spring注解】事件监听:ApplicationListener和@EventListener注解
监听器ApplicationListener用法写一个监听器发布事件ApplicationListener原理多播器注册监听器发布事件 监听器方法回调发布事件的流程@EventListener用法@EventListener原理监听器的实现有两种方式:实现ApplicationListener接口加@EventListenerApplicationListener用法ApplicationListener通过监听容器中发布的一些事件,事件发生就会触发监听器的回调,就完成了事件驱动开发写一个监原创 2021-01-13 19:58:22 · 2393 阅读 · 1 评论 -
【Spring注解】BeanFactoryPostProcessor和BeanDefinitionRegistryPostProcessor
BeanFactoryPostProcessorBeanFactoryPostProcessorBeanFactoryPostProcessor功能时机BeanFactoryPostProcessor 实现原理ioc容器创建invokeBeanFactoryPostProcessorsinvokeBeanFactoryPostProcessorsBeanDefinitionRegistryPostProcessor功能执行时机原理ioc容器创建invokeBeanFactoryPostProcessorsi原创 2021-01-13 00:10:05 · 760 阅读 · 0 评论 -
【Spring注解】AOP
Spring注解 AOPAOP的使用@EnableAspectJAutoProxyAnnotationAwareAspectJAutoProxyCreator的定义信息beandefinition的注册AnnotationAwareAspectJAutoProxyCreator 的注册父类创建ioc容器registerBeanPostProcessors 注册BeanPostProcessor创建BeanPostProcessor对象BeanFactoryAware实现了BeanFactoryAware的s原创 2021-01-11 00:36:47 · 688 阅读 · 1 评论 -
【Spring注解】组件注入
自动装配@Autowire标在属性Autowire标在属性上自动注入流程@Qualifier@Primary示例底层实现标在方法上标在构造器标在参数上@Resource@InjectAware注入Spring底层组件自定义组件使用Spring底层组件原理Profile切换环境使用命令行动态参数使用代码方式自动装配:spring利用依赖注入(DI),完成对IOC容器中各个组件的依赖关系赋值Spring支持以下三种自动注入的方式:@Autowire Spring 提供的@Resource java规范原创 2021-01-09 20:55:44 · 366 阅读 · 0 评论 -
【Spring注解】属性赋值
Spring注解 属性赋值@Value@PropertySource@Value使用@Value给属性赋值:基本数值可以写SpEL, #{} 可以写${}, 取出配置文件properties中的值@PropertySource首先要在配置类中 用@PropertySource 把对应的配置文件保存到运行的环境变量中person.properties的内容person.nickName=aaa通过${} 来取相应的值...原创 2021-01-09 16:33:23 · 983 阅读 · 2 评论 -
【Spring注解】生命周期
Spring注解 生命周期初始化和销毁调用时机自定义初始化和销毁的方式@Bean指定初始化和销毁方法initializingBean和DisposableBean接口@PostConstruct 和@PreDestroyBeanPostProcessor 后置处理器BeanPostProcessor原理Spring底层对BeanPostProcessor的使用bean的生命周期:bean创建–>初始化–>销毁的过程在Spring中由容器管理bean的生命周期,我们可以自定义初始化和销毁方法原创 2020-12-17 17:22:45 · 966 阅读 · 0 评论 -
【Spring 注解】组件注册
Spring注解 组件注册组件注册@Bean @Configuration 给容器中注册组件@Scope 设置组件作用域@ComponentScan 自动扫描组件@Filter@Import 给容器中快速导一个组件FactoryBean@Conditional 按照条件注册Bean组件注册给容器中注册组件的方式:包扫描+组件标注注解(@Controller/@Service/@Repository/@Component)适用于我们自己写的类@Bean适用于导入第三方包里的组件@Impo原创 2020-12-15 20:27:55 · 151 阅读 · 1 评论 -
MyBatis与Spring整合
MyBatis与Spring整合相关文档配置文件Mybatis全局配置文件映射文件SpringMVCweb.xmlSpring配置Spring MVC 配置spring-servlet.xmlcontext:component-scan扫描控制器视图解析器annotation-driven处理静态资源Spring自动扫描其他组件(除控制器)数据源事务管理整合Mybatis创建SqlSessionFactory对象让mapper能够自动注入相关文档查看不同MyBatis版本整合Spring时使用的适配包原创 2020-11-29 23:47:01 · 322 阅读 · 0 评论 -
【Spring 5】新功能
Spring5 新功能整合日志功能@Nullable 注解函数式注册对象支持整合 JUnit5整合 JUnit4Spring5 整合 JUnit5@ExtendWith(SpringExtension.class) 注解引用@SpringJUnitConfig 复合注解WebfluxSpringWebflux 介绍整个 Spring5 框架的代码基于 Java8,运行时兼容 JDK9, 许多不建议使用的类和方法在代码库中删除整合日志功能(1) Spring5 已经移除 Log4jConfigList原创 2020-11-22 22:10:06 · 184 阅读 · 0 评论 -
【Spring5】IOC、AOP、事务
Spring5IOCIOC底层原理IOC过程IOC容器IOC 操作 Bean 管理基于 xml创建对象注入属性使用 set 方法进行注入使用有参数构造进行注入p 名称空间注入(了解)xml自动装配外部属性文件基于注解创建对象属性注入@Autowired:根据属性类型进行自动装配@Qualifier:根据名称进行注入@Resource:可以根据类型注入,可以根据名称注入@Value:注入普通类型属性完全注解开发Spring的两种Bean用FactoryBean实现工厂Beanbean作用域bean生命周期AO原创 2020-11-22 14:55:31 · 189 阅读 · 0 评论 -
【Spring】IOC容器
IOC容器一、IOC容器Bean 管理基于xml配置文件方式实现Bean管理操作创建对象基于注解方式实现Bean管理操作参考:https://blog.youkuaiyun.com/weixin_45496190/article/details/107059038一、IOC容器 1、什么是IOC(控制反转) a)把对象创建和对象之间的调用过程,交给Spring进行管理 b)使用IOC目的:为了降低耦合度 2、IOC底层 a)xml解析、工厂模式、反射 3、Spring提供的IOC容器实现的两原创 2020-11-04 13:22:50 · 299 阅读 · 0 评论