一、简介
二、IOC
2.1 工厂模式
耦合的概念
解耦合实现 配置+反射
工厂类
配置文件
创建对象
此工厂模式仍存在问题,每次执行都会创建新的对象,即多例模式。
单例模式:执行效率快,节省资源,存在多线程问题;
多例模式:执行效率慢,浪费资源,不存在多线程问题。
工厂模式一般采用单例模式。
工厂模式改进
2.2 IOC
2.2.1 IOC应用
定义
配置文件
创建对象
IOC三种实现
ApplicationContext和BeanFactory
ApplicationContext适合于单例对象
BeanFactory适合于多例对象
2.2.2 bean
bean的创建方式
工厂类
bean的作用范围
bean的生命周期
2.3 DI
依赖注入基本概念
二、注解IOC
2.1 开启注解扫描
xml开启注解扫描
2.2 创建对象
用于创建对象并保存到spring容器的注解
2.3 注入对象
注入对象
@AutoWired
多匹配
Qualifer不能独立使用,只能用在@AutoWired基础之上
@Qualifier
@Resrouce可以单独使用
@Resrouce
注解bean的作用范围
三、新注解
3.1 @Configration
3.2 @Bean
注解行创建对象默认是单例的,可通过@Scope修改
当配置类作为AnnotationConfigApplicationContext()的配置类时,类上的@Configration可以省略不写。 其余的配置类必须加@Configration。可以使用@Import解决
3.3 @Import
在配置类中加入其它配置类,其它配置类也可以不写@Configration
3.4 @PropertySource
3.5 @RunWith
spring5X对应junit4.12以上版本
四、AOP
4.1 事务控制
原本事务控制是以dao层方法为颗粒的,应用事务控制可以自由改变颗粒,一般以service为最小颗粒
事务控制
数据库连接池工具类
本地线程连接池
释放连接
事务控制
事务控制工具类
方法中应用
事务隔离与传播
4.2 动态代理
4.2.1 基于接口的动态代理
4.2.2 基于子类的动态代理
添加依赖
4.3 AOP
切入点表达式写法
五、JdbcTemplate
1.简介
简单实现
具体代码