spring讲解笔记:spring框架学习的要点总结
重要的概念
重要程度
概念
说明
*****
IOC
控制反转,将原来在代码中手动创建对象(也就是new)的操作,反转到由spring容器来进行创建并进行管理。目的:解耦。
*****
DI
依赖注入,由spring容器根据所管理的bean之间的依赖关注,自动进行注入赋值,替代了原来手动给对象属性赋值的操作。要点:依赖的双方必须都由spring容器来进行管理。目的:解耦。
*****
AOP
面向切面编程:意为将原来散落在系统中的重复性的功能代码抽取出独立的组件进行封装,然后使用动态代理的方式在不修改目标对象的情况下对其进行功能增强,可以实现可插拨式的编程,增加功能和去掉增强的功能对目标对象来说都是无感知的,基本上可以实现零耦合。目的:解耦、可重用、更灵活。
*****
Spring事务
又称为声明式事务:主要解决业务层中包含多个持久层方法的调用时,如何来保证这些持久层方法要么同时执行,要么同时回滚,从而保证事务执行的一致性。目的:在业务层来管理统一事务。
2.学习的注解
重要程度
注解
作用
作用的地方
*****
@Component
实例化Bean
类上
*****
@Service
实例化Bean
业务类上
***
@Repository
实例化Bean
持久化类上
*****
@Controller
实例化Bean
WEB组件上
**
@Scope
设置bean单例或多例
类上
**
@PostContructor
声明初始化方法
方法上
**
@PreDestroy
声明销毁方法
方法上
*****
@Autowired
自动按类型注入属性
属性上
**
@Qualifier
按名字注入,配置合@Autowired使用
属性或形参中
**
@Resource
按名字注入
属性上
*****
@Value
注入基本数据类型
属性上
*****
@Bean
实例化第三方法bean,将方法的返回值放入IOC容器中管理
配置类的方法上
*****
@Configuration
声明配置类
配置类上
*****
@ComponentScan
声明扫描指定包下所有的注解并进行解析执行
配置类上
*****
@PropertySource
指定引入properties属性文件并进行加载
配置类上
*****
@Import
合并配置类
配置类上
*****
@RunWith
指定运行器
测试类上
*****
@ContextConfiguration
用于指定测试时加载的配置类或配置文件
测试类上
*****
@EnableAspectJAutoProxy
开启注解开发AOP功能
配置类上
*****
@Aspect
设置当前类为通知类
通知类上
*****
@Pointcut
生命切点表达式
私有空方法上
**
@Before
前置通知:目标方法执行前执行
通知方法上
**
@AfterReturning
后置通知:目标方法正常执行后执行
通知方法上
**
@AfterThrowing
异常通知:目标方法抛出异常后执行
通知方法上
**
@After
最终通知:目标方法执行成功与否均执行
通知方法上
*****
@Around
环绕通知:可以在目标方法执行前后执行
通知方法上
*****
@EnableTransactionManagement
开启注解式事务驱动
配置类上
*****
@Transactional
声明当前业务方法或当前类的所有方法均由spring管理事务
接口、实现类或具体方法上