Spring介绍

1.Spring是轻量级java开源框架

2.Spring简化程序主要体现在具有IOC和AOP功能

IOC(控制反转):对于某个对象而言,原先是它控制其他对象,现在是将这些对象交给Spring控制,由Spring将对象交给你,Spring控制对象的创建和销毁。

AOP(面向切面编程):主要是将可重用的功能提取出来,在合适的时候再织入到程序中;比如安全、日志记录。

AOP应用场景:Lazy loading (懒加载)、Synchronization(同步)、Transcation(事务)

AOP采用动态代理、用于在运行时实现切面协议的对象,

事务特性:原子性、一致性、隔离性、持久性

声明式事务:是建立在AOP之上的,其本质是对方法进行拦截,然后在目标方法前后进行拦截,然后在目标方法之前创建然后加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。只需在配置文件中做相关的事务规则说明(或通过基于@Transactional注解方式),便可以将事务规则应用到业务逻辑中

@Transactional可以作用于接口、接口方法、类以及类方法上,建议不要用在接口和接口方法上使用该注解,只有在使用基于接口的代理时才会生效,。@Transactional注解用该只能被应用于public方法上,这是AOP的本质决定的,如果用在其他修饰符上,将会被忽略,也不会抛出异常。

Spring中不同的通知类型:前置通知、返回之后通知,抛出异常通知、后置通知、围绕通知

posted @ 2019-11-07 14:15  zzxzxn  阅读(104)  评论(0编辑  收藏  举报