一、Spring
1.Spring是一个开源框架,主要优势之一就是它的分层架构,分层架构允许使用者哪一个组件。Spring的核心是控制反转控制(IOC)和面向切面(AOP)。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式)轻量级开源框架。
2.EE开发分成三层结构:
(1)WEB层:SpringMVC
(2)业务层:Bean管理(IOC)
(3)持久层:Spring的JDBC模板,ORM模板用于整合其它持久层框架
3.IOC(反转控制):就是将创建对象的工作交给Spring,作用是实现了程序的解耦合
DI(依赖注入):Spriing创建这个类的过程中,Spring将类依赖的属性设置进去
4.了解Spring的开发包
(1)docs:API和开发规范
(2)libs:jar包和源码
(3)schema:约束
5.引入相关jar包
其中一些sources是相关jar包的源码便于查看,也可以选择不导入源码。
6.在Eclipse中引入约束在下载的Spring开发包的schema当中,之后创建applicationContext.xml文件用于写配置信息,然后引入命名空间。
7.编写相关的类,然后在applicationContext.xml文件中进行配置。
8.Spring中的工厂(容器)
(1)ApplicationContext接口有两个实现类:分别是ClassPathXmlApplicationContext(加载类路径下Spring的配置文件);另外一个就是FileSystemXmlApplicationContext(加载磁盘下Spring的配置文件)
(2)BeanFactory(过时)
(3)ApplicationContext和BeanFactory区别:BeanFactory是在getBean的时候才会生成类的对象,而ApplicationContext是在加载applicationContext.xml的时候就会创建对象
9.Spring配置文件的提示设置
在Eclipse的Window-->preference下搜索cata然后找到xml相关的配置,得到下面的界面:
然后将Location最后的\spring-beans-4.3.xsd复制到key的最后,然后点击OK就可以了
10.Spring相关配置
(1)id属性和name属性标签的配置
id必须唯一,不能出现特殊字符,而name不一定需要唯一,而且可以出现特殊字符
(2)scope属性(Bean的作用范围)
1)singlton:默认值,单例的
2)prototype:多例的
3)request:Spring创建一个对象,并将对象存放到request域中
4)session:Spring创建一个对象,并将对象存放到session域中
5)globalSession:应用在Porlet环境,如果没有Porlet环境,那么globalSession就相当于Session
11.Bean生命周期的配置
(1)通过<bean></bean>标签里面的init-method作为Bean的初始化的时候执行的方法
(2)通过<bean></bean>标签里面的destory-method作为Bean的销毁的时候执行的方法,此方法的执行需要在工厂关闭的时候,Bean才会被销毁
12.Spring的Bean的管理XML的方式
(1)Spring生成Bean的时候三种方式
1)无参数构造方法
2)静态工厂
3)实例工厂
(2)Spring的Bean的属性的注入
1)构造方法的方式注入属性
2)set方法的方式注入属性
(3)Spring的属性注入:对象类型的注入(标签中使用ref)
(4)名称空间p的属性注入的方式:Spring2.x版本后提供的方式
(5)SpEL的方式的属性注入:Spring3.x版本后提供的方式
12.Spring的分配文件的开发
(1)创建工厂的时候加载多个配置文件,使用ApplicaitonContext ac = new ClassPathXmlApplicationContext("applicationContext.xml","applicationContext2.xml")
(2)在一个配置文件中包含另外一个配置文件,使用<import resource="applicationContext2.xml"></import>