Spring
文章平均质量分 55
Spring SpringBoot SpringCloud
XSemperFI
无冥冥之志者,无昭昭之明,无昏昏之事者,无赫赫之功
展开
-
@Transactional事务失效
除非特殊配置(比如使用 AspectJ 静态织入实现 AOP),否则只有定义在 public 方法上的 @Transactional 才能生效。因为Spring 默认通过动态代理的方式实现 AOP,对目标方法进行增强,private 方法无法代理到,Spring 自然也无法动态增强事务处理逻辑。必须通过代理过的类从外部调用目标方法才能生效。Spring 通过 AOP 技术对方法进行增强,要调用增强过的方法必然是调用代理后的对象。因为this 指针代表对象自己,Spring 不可能注入 this,所..原创 2021-11-19 20:44:14 · 733 阅读 · 0 评论 -
Spring Ioc
在面向对象的编程中,有几种基本技术可以实现控制反转。这些是:使用工厂模式使用服务定位器模式使用以下任何给定类型的依赖项注入:构造函数注入setter注射接口注入Spring的控制反转在org.springframework.beans和org.springframework.context软件包提供了对Spring框架的IoC容器的基础。该BeanFactory接口提供了...原创 2021-02-28 22:06:59 · 123 阅读 · 0 评论 -
Spring Boot 配置文件放在 jar 外部
Spring Boot 配置文件放在 jar 外部通过命令行指定外置配置文件自定义配置文件按Profile不同环境读取不同配置Spring Boot程序默认从application.properties或者application.yaml读取配置,如何将配置信息外置,方便配置呢?查询官网,可以得到下面的几种方案:通过命令行指定SpringApplication会默认将命令行选项参数转换为配置信息例如,启动时命令参数指定:java -jar myproject.jar --server.port转载 2020-08-28 10:59:56 · 161 阅读 · 0 评论 -
Spring事务隔离级别和传播机制
MySql的事务隔离级别事务是逻辑上的一组操作,组成这组操作的各个逻辑单元,要么一起成功,要么一起失败.原子性 (atomicity):强调事务的不可分割.一致性 (consistency):事务的执行的前后数据的完整性保持一致.隔离性 (isolation):一个事务执行的过程中,不应该受到其他事务的干扰持久性(durability) :事务一旦结束,数据就持久到数据库MySql事...原创 2020-02-29 17:03:13 · 354 阅读 · 0 评论 -
@Transactional不生效的场景
@Transactional不生效的场景数据库引擎是否支持事务。注解所在的类是否被加载。注解所在的方法是否为public修饰。如果要用在非 public 方法上,可以开启 AspectJ 代理模式。是否发生了自调用问题。就调该类自己的方法,而没有经过 Spring 的代理类,默认只有在外部调用事务才会生效。Spring 如何在一个事务中开启另一个事务?所用的数据源是否加载了事务管理器。...原创 2020-02-29 16:05:33 · 1374 阅读 · 0 评论 -
SpringBoot 整合 Redis
SpringBoot 整合 Redis1 引入redis通过springboot初始化整合redis其生成的pom.xml中会有<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redi...原创 2019-11-30 19:56:44 · 190 阅读 · 0 评论 -
JPA之级联关系@OneToMany 和 @ManyToMany
JPA之级联关系@OneToMany 和 @ManyToMany1. 双向@OneToMany@Entity@Table(name = "TEACHER")public class Teacher { @Id @GenericGenerator(name = "jpa-uuid", strategy = "uuid") @GeneratedValue(genera...原创 2019-11-20 21:58:24 · 595 阅读 · 0 评论