深入学习Spring
文章平均质量分 80
w7486
这个作者很懒,什么都没留下…
展开
-
Spring事务传播机制与失效场景
一.Spring事务传播机制 首先一定是基于嵌套事务来讨论的,如果是一个事务就没什么意义了 比如现在有一个这样的例子::test调用methodB,methodB有Transactional,methodB调用 methodA,methodA也有事务 ,这个就是我们的嵌套事务PROPAGATION_REQUIRED(必须的):支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择,也是Spring 默认的事务的传播。 PROPAGATION_REQUIRES_NEW(需要新的).原创 2022-01-17 20:57:33 · 581 阅读 · 0 评论 -
Spring面试常问的问题
目录spring作用BeanFactory和FactoryBean的区别Spring的钩子方法注册bean的方式Bean的生命周期Spring如何解决的循环依赖DI与Aop的执行顺序spring作用帮我们管理对象以及对象的依赖轻量级框架 减少代码侵入松耦合BeanFactory和FactoryBean的区别FactoryBean 他本身就是一个bean 他可以通过getObject放发去创建bean,所以他是创建bean的一种方式BeanFactory 是原创 2022-01-16 22:56:28 · 197 阅读 · 0 评论 -
Spring三级缓存解决循环依赖
目录一.普通依赖二.循环依赖一.普通依赖比如ClassA 依赖 ClassB@Component public class ClassA { @Autowired private ClassB classB; }流程:1.getBean(classA) -> doGetBean(classA)2.getSingleton(classA,true) singletonsCurrentlyInCreation也是空 返回null3.this.g原创 2022-01-15 19:04:16 · 260 阅读 · 0 评论 -
Spring中bean的生命周期流程
AnnotationConfigApplicationContex或者 ClassPathXmlApplicationContext都会进入AbstractApplicationContext 的 refresh方法1.obtainFreshBeanFactory()解析XML 封装成BeanDefinitionsBeanDefinitions里会存放beanName beanClass 是否单例 是否懒加载这些字段先会创建BeanFactory对象 调用refreshBeanFact..原创 2022-01-14 20:26:38 · 380 阅读 · 0 评论 -
Spring注册bean的方式
目录一.@Bean直接导入单个类二.@ComponentScan组件扫描三.@Import导入四.把需要注入的对象封装为FactoryBean一.@Bean直接导入单个类 //默认是方法名 //指定value 则以value为准 @Bean("stu") public Student stu() { return new Student("ws",100); }test@Test public void Tes原创 2022-01-11 14:30:02 · 1041 阅读 · 0 评论 -
Spring5赋值组件介绍
1.@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。组件可以被组件扫描器@ComponentScan扫描2.@Servicel用于标注业务层组件3.@Controller用于标注控制层组件4.@Repository用于标注数据访问组件,即DAO组件。5.@PropertySource读取配置文件6.@Value普通数据类型赋值Value赋值的三种方式普通赋值 @Value("zs") //创建完对象在进行赋原创 2022-01-10 20:00:07 · 225 阅读 · 0 评论 -
Spring5配置组件介绍
目录1.@Configuration2.@ComponentScan3.@Scope4.@Lazy5.@Conditional6.@Import7.给Ioc容器注册Bean的方式8.生命周期控制1.@Configuration说明:把一个类作为一个loC容器,它的某个方法头上如果注册了@Bean,就会作为这个Spring容器中的Bean。代码演示:Student实体类@Datapublic class Student { private S..原创 2022-01-10 18:08:41 · 418 阅读 · 0 评论