Spring的初步了解

1. Spring 概述
1.1是什么
spring是轻量级的javeSE/EE开源框架,内核是ioc(反转控制)和aop(面向切面编程),提供了springMVC和spring JDBCTemplate 及业务事务管理等众多的企业级应用技术.整合开源世界众多的第三方开源框架和类库.成为了使用最多的java EE 企业应用开源框架
1.2 发展历程
2017年9 月发布了spring5.0 通用版本
1.3 优势
方便解耦 简化开发
AOP 编程的支持
声明式事物的支持
方便程序的测试
2. 体系结构
BeanFactory(接口)// 顶级接口
|–AppliationContext(接口) // 最常用接口
|–FileSystemXmlApplicationContext(实现类)几乎不用 // 子实现类 用于加载文件系统位置中的xml配置文件 参数是一个系统路径文件
|–ClassPathXmlApplicationContext(实现类) : 加载类路径的配置文件构建容器对象 // 参数是在类路径文件下的xml配置文件 在maven 项目中的resources 文件夹下
|–AnnotationConfigApplicationContext (实现类) : 读取注解构建容器对象
// 用于读取注解配置
3.核心配置文件中bean文件属性
3.1 id 属性
作为bean对象的唯一标识, 在配置文件中不能重复.在getBean标签中使用id的属性值进行bean对象标识进行对象获取
3.2 class 属性
全限定包名,spring在根据id获取到全限定包名后通过反射进行对象的创建,并将创建的对象放置在spring的容器中,以键值对的方式存储,键为id值,值为Object对象
3.3 scope 属性
范围属性,取值常用的有singleton和prototype ,singleton代表着单例模式,即在spring容器中只创建一次该对象,并只能有一个对象被存储.prototype代表着多例模式,在spring中可以创建多个bean对象.两者的创建时机也不相同,singleton的对象创建时机是在spring容器被创建的时候直接进行对象的创建,prototype是在每次调用getBean方法时创建对象,且这个对象不会存储在spring容器中
3.4 init-method和destory-method属性
这两个属性是我们bean对象的生命周期相关的属性,init-method所指定的方法会在对象创建的时候执行,而destory-method指定的方法会在对象被销毁的时候执行,对于两种不同的scope属性对象的销毁时机也是不相同的,singleton即单例模式的对象会在spring容器被销毁的时候销毁,而prototype即多例模式的对象在长时间不使用的时候会被垃圾回收机制回收销毁.
4. bean对象的三种创建方式
4.1 无参构造方法创建对象
是指在配置文件或配置类中直接交给spring进行创建对象的操作,会调用对象的无参构造方法.此种方法最常用
4.2 静态工厂创建
是指在工厂类中有获得对象的静态方法,同时在配置文件或者配置类中将工厂类的创建交给spring, spring会使用工厂类类名直接调用其中的静态方法获得我们想要获取的bean对象,
4.3 实例工厂创建
是指在工厂类中有获得对象的动态方法,同时在配置文件或者配置类中将工厂类对象的创建权交给spring,spring 会先创建工厂类的对象,然后调用动态方法获取我们需要的bean对象,要注意的是在创建的工厂类对象也会被放置在我们的spring容器中.
本次就先写到这里,刚刚学到框架,总结一下自己的知识点,下次总结依赖注入和注解配置的知识点,.

你可能感兴趣的:(spring)