Spring学习笔记(1)
Spring框架介绍
-
Spring是轻量级的开源的JavaEE框架
-
Spring可以解决企业应用开发的复杂性
-
Spring有两个核心部分:
- IOC:控制反转,把创建对象过程交给Spring管理
- Aop:面向切面,不修改源代码进行功能增强
-
Spring特点
- 方便解耦,简化开发
- Aop编程支持
- 方便程序测试(junit4)
- 方便和其他框架及进行整合
- 方便进行事务操作
- 降低API开发
入门案例
-
导入Spring5相关jar包
org.springframework spring-beans 5.2.8.RELEASE org.springframework spring-context 5.2.8.RELEASE org.springframework spring-core 5.2.8.RELEASE org.springframework spring-expression 5.2.8.RELEASE commons-logging commons-logging 1.2 -
创建Spring配置文件,在配置文件配置创建的对象
-
Spring配置文件使用xml格式
<?xml version="1.0" encoding="UTF-8"?>
-
-
编写测试代码
public class TestDemo { @Test public void test(){ //1.加载spring配置文件 ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml"); //2.获得配置创建的对象 User user = context.getBean("user", User.class); System.out.println(user);//com.lxk.User@9a7504c user.add();//执行力User类的add方法 } }
IOC容器
-
IOC概念和原理
- 控制反转,把对象创建和对象之间的调用过程交给Spring进行管理
- 使用IOC目的:为了耦合度降低
- 入门案例就是IOC实现
-
IOC底层原理
- xml解析,工厂模式,反射
原始方式:
工厂模式:
IOC:
IOC接口:
-
IOC思想基于IOC容器完成,IOC容器底层就是对象工厂
-
Spring提供IOC容器实现两种方式:(两个接口)
? 都可以创建对象
-
BeanFactory:IOC容器的基本实现,是Spring内部的使用接口,不提供给开发人员使用
*加载配置文件时候不会创建对象,获取(使用)对象时才去创建对象(getBean())
-
ApplicationContext:BeanFactory接口的子接口,提供更多更强大的功能,一般由开发人员进行使用
*加载配置文件时就会把配置文件对象创建
前者实现类读取xml配置文件需要绝对路径,后者只要xml文件在 src下直接写xml名
-