spring实战 梳理

spring 梳理

依赖装配

基于xml

  • 构造器
  • 使用传统的property元素
  • 使用p命名空间
  • 装配集合类型:list, set, map, property
  • 装配null值
  • 使用SpEL表达式

减少xml

基于注解的装配

  • @AutoWired
  • @Inject
  • @Named
  • @Value 可以与SpEL结合起来用

基于注解的bean定义

AOP

切面:一个POJO,里面的某些方法将会被切入(调用) pointcut(切点):实际上就是一个匹配器,用于指定是否进行切入,同时也可以用来进行参数绑定

声明式事务

原理

通过AOP,将一个切面切入到需要事务的方法的开始和结束处,这个切面就是所谓的事务管理器

对于jdbc事务来说,我们要使用的是事务处理器是org.springframework.jdbc.datasource.DataSourceTransactionManager

<bean id="transcationManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource" />

这个事务管理器的作用是:

  • 方法执行之前切入:通过dataSource获取一个connection,并且将这个connection跟当前线程绑定在一起(通过使用ThreadLocal),并且setAutoCommit为false,
  • 方法执行之后切入:获取当前前程的connection,用它进行commit

定义注解驱动事务

  1. xml配置: <tx:annotation-driven /> 也可以指定事务管理器(默认是transactionManager) <tx:annotation-driven transaction-manager="myTxManager"/>
  2. 在java源码里,在要使用事务的类或者方法上,使用@Transactional,同时可以设置事务属性

转载于:https://my.oschina.net/mustang/blog/207628

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值