spring AOP个人理解

人们一般的认为spring最大优势就是集成了aop(切面注入)和ioc(依赖注入),但是在我感觉最大的好处其实是ioc,但是今天说的是aop,就先把ioc放到一边。

aop切面编程,顾名思义就是在一个 定义一个切面,在切面的纵向定义处理方法,处理完成之后,回到横向业务流。作为spring为核心组成部分之一, 最常见的就是事务控制,而一般在源码不缺失的情况下能见到也只有事务控制(就我而言,应该是我太菜的缘故),一般使用spring使用aop都是在配置文件下通过正则的方式匹配被事务控制的类,但是这正是我所诟病的地方,这种配置方式固然简化了开发过程所要注意的业务的事务处理方向,但是,所有的方法都要增加事务控制难免影响程序性能,所以一般我的事物控制都不是用这种配置方式,而是关注业务方向,具体到那种业务,来具体不同的事物,比如查询的方法,一般不加事物控制,因为无论查询失败还是成功对数据库里的数据并没有构成影响,而单一(注意这个单一)新增和修改,看业务的关键度,非关键业务可不加。对于有字段是唯一的方法要加(根据try catch住的异常做处理)。至于对一个方法里有两次及以上的数据库操作,这是肯定要加事务控制的。及在方法上加 @Transactional注解

欢迎各位大牛的批评教育
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值