随笔分类 -  java / Spring

摘要:Spring事务传播机制是指多个包含事务的方法相互调用时该遵循的规则。 实现方式 事务传播机制是通过 TransactionInterceptor 拦截器来实现的。TransactionInterceptor 是一个AOP拦截器,它拦截方法调用,并在方法调用之前和之后启动和提交事务。 当使用 Spr 阅读全文
posted @ 2023-05-29 15:52 程序员_YHB 阅读(26) 评论(0) 推荐(0) 编辑
摘要:在Spring Boot项目中的引导类上有一个注解@SpringBootApplication,这个 注解是对三个注解进行了封装,分别是: @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan 其中 @EnableAutoC 阅读全文
posted @ 2023-05-29 13:27 程序员_YHB 阅读(3) 评论(0) 推荐(0) 编辑
摘要:SpringMVC有四大组件: (1)前端控制器(DispatcherServlet) (2)处理器映射器(HandlerMapping) (3)处理器适配器(HandlerAdapter) (4)视图解析器(ViewReslover) 执行流程: (1)前端发送请求到前端控制器(Dispatche 阅读全文
posted @ 2023-05-29 13:05 程序员_YHB 阅读(13) 评论(0) 推荐(0) 编辑
摘要:Spring事务有两种实现方式: (1)编程式事务:自己手动控制开启事务、提交事务、回滚事务。 优点:编程式事务可以根据业务逻辑和数据操作的复杂度进行灵活的控制和处理,保证数据的一致性和完整性; 使用编程式事务时,可以控制每个事务的大小和影响范围,因此在大型系统需求变化频繁的情况下很有用,能够更方便 阅读全文
posted @ 2023-05-29 12:54 程序员_YHB 阅读(212) 评论(0) 推荐(0) 编辑
摘要:循环依赖:两个或两个以上的bean循环引用。例如:A依赖B,B依赖A。 Spring有三种循环依赖问题: (1)构造器的循环依赖:Spring无法解决构造器的循环依赖问题,但是可以使用@Lazy将bean声明为懒加载,什么时候用到这个bean在创建。 (2)非单例bean的setter循环依赖:Sp 阅读全文
posted @ 2023-05-29 12:37 程序员_YHB 阅读(77) 评论(0) 推荐(0) 编辑
摘要:首先通过BeanDefinition类获取bean的定义信息,例如:是否为单例bean、是否为懒加载等信息。 (1)调用类的构造器实例化bean。 (2)依赖注入。比如setter注入,像平时开发用的@Autowire就是这一步完成的。 (3)如果该类实现了一些Aware接口,则调用这些Aware接 阅读全文
posted @ 2023-05-29 11:19 程序员_YHB 阅读(9) 评论(0) 推荐(0) 编辑
摘要:(1)Singleton:单例bean。 (2)prototype:多例bean。每次请求都会创建一个bean。 (3)request:每次http请求都会创建一个bean,该bean仅在当前http request内有效。 (4)session:在一个HTTP Session中,一个Bean定义对 阅读全文
posted @ 2023-05-29 11:07 程序员_YHB 阅读(11) 评论(0) 推荐(0) 编辑
摘要:(1)方法没有用public修饰会导致事务失效。 解决方法:在方法上使用public修饰。 (2)使用try-catch捕获异常没有抛出异常,而是由方法自己处理会导致事务失效。 解决方法:处理了异常记得抛出。 (3)方法抛出检查异常会导致事务失效,报错也会导致事务失效。 解决方法:在@transac 阅读全文
posted @ 2023-05-29 11:00 程序员_YHB 阅读(12) 评论(0) 推荐(0) 编辑
摘要:SpringIOC和SpringAOP是Spring的两个核心组件。 SpringIOC:SpringIOC是一个管理bean的容器,能够帮我们管理bean的整个生命周期,在没有SpringIOC的时候,我们需要自己手动的管理bean以及bean的依赖关系,这样会增加耦合,而有了SpringIOC, 阅读全文
posted @ 2023-05-29 10:52 程序员_YHB 阅读(18) 评论(0) 推荐(0) 编辑
摘要:Spring并没有对单例bean作线程安全的处理,在并发条件下Spring的bean是否是线程安全的有如下两种情况: (1)无状态的bean:没有数据存储能力,例如service类和dao类都是无状态的bean,所以是线程安全的。 (2)有状态的bean:有数据存储能力,在并发环境下会发生线程安全问 阅读全文
posted @ 2023-05-29 10:34 程序员_YHB 阅读(83) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示