spring概念
spring 就是一个容器,容器中装什么对象就有什么功能,所以spring被称为一站式框架,意思就是一个spring就能开发一个项目,
spring在三层架构中负责管理项目中的所有对象,可以看作项目中的管家
ioc思想
inverse of control(反转控制)
将我们创建的方式反转了,以前我们需要自己创建对象自己维护,三层架构中的关系也是由自己维护,使用spring后,对象的创建可以由spring完成创建以及注入.反转控制就是反转了对象的创建方式.从我们自己创建对象反转交给了程序
DI: dependency Injection (依赖注入)
实现IOC思想需要DI做支持,DI的本质就是创建对象之间的依赖关系
注入方式:
set注入(常用),
构造函数注入,
p名称空间注入
spel注入(spring表达式语言)
注入类型:
值类型,引用类型
spring的api简介
1.BeanFactory接口(过时)
spring原始接口.针对实现类的功能比较单一,特点是每次获得对象时才会创建对象.适合在资源匮乏的环境使用
2.ApplicationContext
每次启动时就会创建容器中配置的所有的对象,并提供更多的功能实现类为
(1) 从类路径下加载配置文件:ClassPathXmlApplicationContext
(2)从硬盘绝对路径下加载文件:FileSystemXmlApplicationContext(“d:/xxx/xxx/xxx/…”)
spring实现aop的原理
1.动态代理,被代理对象必须实现接口才能产生代理对象
2.cglib代理,可以对任何对象实现代理,原理是对每个对象进行继承代理,反过来说,如果类为final修饰,将不能被代理
spring Aop 思想
AOP全名Aspect-Oriented Programming,中文直译为面向切面(方面)编程
aop思想主要用于有横切性质的系统级的服务,比如struts2中的拦截器,以及过滤filter中对编码的处理等等.
什么是横切性质呢?就是横向抽取,纵向重复,用自己话说就是说横向抽取纵向重复性质的代码,提高了代码的复用性,以及对代码的操作更灵活了
aop在spring中的体现就是,能够为容器中的对象生成代理对象,对对象的功能的增强等,spring aop就可以说是spring中可以横向生成代理对象,也可以横向管理事务
spring aop名词学习
以下概念词意思都是在spring中的体现
Joinpoint(连接点):目标对象,所以可以增强的方法
Pointcut(切入点):目标对象,已经或确定要增强的方法
Advice(通知/增强):增强的代码
Target(目标对象):被代理的对象
Weaving(织入):将通知应用到切入点的过程
Proxy(代理):将通知织入到目标对象之后,形成的代理对象
aspect(切面):切入点加通知
新手一枚,主要是为了总结一下,学的不好,请多关照,一直努力中,表达能力不是很好,继续学习,希望小伙伴和我一起努力哦*
明天写spring管理事务