## Spring的知识概述
1. 概述
管理Bean生命周期的容器。2种特性:IOC,AOP
2. spring的两种特性
1.IOC
控制反转:把对象的创建权反转给容器
IOC核心是DI依赖注入:属性注入,构造器注入,setter方法注入
2.AOP
面向切面编程
两种动态代理:
JDK动态代理,为默认的动态代理,必须指定接口,这些接口都是已经被代理对象实现了的。
Cglib动态代理,不需要指定接口。
AOP项目中的应用场景:
权限拦截:登录方法中做切面拦截,判断当前登录人是否有权限操作系统,或者操作那些菜单。
日志功能处理:通过拦截切点(save*、update*、delete*、select*),对操作进行处理。
5种通知:
前置通知:方法执行前处理。
后置通知:方法执行后处理。
环绕通知:方法执行时处理。
异常处理:方法执行时抛出异常。
最后通知、引用通知:方法执行完成。
3. Spring对事务的支持
事务:是对数据库的原子性操作被称为事务。
事务4特性:
原子性:原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚。
一致性:一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。
隔离性:隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。
读未提交
读已提交
可重复读:Mysql默认可重复读
串行话
持久性:持久性是指一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的,即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。
事务如何配置:
applicationContext-transaction.xml
TransactionManger
配置通知、连接点、传播行为
4. Spring整合配置
整合Mybatis:
资源加载器,加载properties文件
配置数据源:DataSource
配置SQLSessionnFactory工厂
配置Mapper扫描器,扫描Mapper
整合Service
通过注解的方式扫描Service层接口,接口实现类
通过配置文件的形式:xml>Beans>Bean:id>Class
整合事务层
配置事务管理TransactionManager
配置通知
连接点
传播行为
配置切点进行拦截
exector=*com.*.service.*.*(**)
整合SpringMVC
通过ApplicationContext上下文来扫描文件
Spring的知识概述
最新推荐文章于 2024-07-25 22:45:00 发布