Spring
文章平均质量分 61
pbxs
这个作者很懒,什么都没留下…
展开
-
Spring声明式事务和编程式事务的原理及使用场景
我们知道,当两个或以上的表需要同时修改时,我们需要使用事务来实现操作的原子性、一致性。数据库的事务默认只支持单表的操作,如果有两个或以上的表需要同时修改时,需要设置事务为手动提交、回滚。Java、Spring在遵循数据库事务的基础上提供了代码层面的实现。Spring事务的两种使用方式:1、在方法上添加@Transactional注解启用声明式事务。@Transactionalpublic int insertUser(SysUser user) { // a、新增用户信息 int.原创 2020-07-31 17:23:45 · 1029 阅读 · 0 评论 -
Spring启动时实现初始化的几种方式
构造方法里初始化、@PostConstruct、InitializingBean、initMethod、ApplicationListener监听、SpringBoot的ApplicationRunner和CommandLineRunner接口原创 2021-06-07 16:06:04 · 5047 阅读 · 3 评论 -
Spring事务的7种传播属性
Spring在TransactionDefinition接口中规定了7种事务传播行为,他们规定了事务方法和事务方法发生嵌套时事务如何进行传播。所谓事务的传播行为是指,如果在开始当前事务之前,一个事务上下文已经存在,此时有若干选项可以指定一个事务性方法的执行行为。PROPAGATION_REQUIRED默认事务类型,如果没有,就新建一个事务;如果有,就加入当前事务。适合绝大多数情况。如果当前存在事务,则加入该事务;如果当前没有事务,则创建一个新的事务。PROPAGATION_REQUIRES原创 2021-04-05 18:24:30 · 932 阅读 · 0 评论 -
Spring框架中有哪几种事件
Spring 提供了以下5种标准的事件:上下文更新事件(ContextRefreshedEvent):在调用ConfigurableApplicationContext 接口中的refresh()方法时被触发。上下文开始事件(ContextStartedEvent):当容器调用ConfigurableApplicationContext的Start()方法开始/重新开始容器时触发该事件。上下文停止事件(ContextStoppedEvent):当容器调用ConfigurableApplication原创 2020-10-27 15:47:04 · 603 阅读 · 0 评论 -
Mybatis和Spring整合的源码解析
我们知道引入MyBatis包,就能单独使用Mybatis了,但如果想整合到Spring中使用还需要再引入mybatis-spring包,这个包是MyBatis自己开发的,就是为了把Mybatis整合到Spring中。那Mybatis是怎么对Spring做扩展的呢?MyBatis的使用:老程序猿可能用过iBatis,对,MyBatis的前生就是iBatis,二者用法稍有不同,但区别不大。目前MyBatis对两种用法都支持。看过源码会发现,MyBatis底层实现还是iBatis,只是对iBatis进行了包原创 2020-08-02 16:50:46 · 313 阅读 · 0 评论