Spring是什么?
spring是J2EE应用程序框架,是轻量级的IoC和AOP的容器框架(相对于重量级的EJB),主要是针对javaBean的生命周期进行管理的轻量级容器,可以单独使用,也可以和Struts框架,ibatis框架等组合使用。
- IOC(Inversion of Control )或DI(Dependency Injection)
IOC控制权反转
原来:我的Service需要调用DAO,Service就需要创建DAO
Spring:Spring发现你Service依赖于dao,就给你注入.
核心原理:就是配置文件+反射(工厂也可以)+容器(map)
- AOP:面向切面编程
核心原理:使用动态代理的设计模式在执行方法前后或出现异常做加入相关逻辑。
我们主要使用AOP来做:
1、事务处理 执行方法前,开启事务、执行完成后关闭事务、出现异常后回滚事务
2、权限判断 在执行方法前,判断是否具有权限
3、日志 在执行前进行日志处理
4、....