Spring入门案例
-
下载Spring5
-
打开IDEA工具, 创建一个普通的Java工程
-
导入Spring5相关jar包
- 我们此时只是做一个入门按理, 只需要导入Spring核心包即可,其他的一些jar包的对应功能我们暂时使用不到, 所以我们暂时可以不用导入
- core container(核心) : 包括了四个部分:
- Beans
- Core
- Beans和Core就是我们的IOC(控制反转)相关的jar包
- Context
- 上下文相关jar包
- Expression
- 表达式相关jar包
- 我们一般还会导入一个日志jar包 : commons-logging.jar
- 在当前项目之下创建一个lib文件夹,将jar包放入到lib文件夹之后,右击lib文件夹, 点击project Structure , 然后点击modules, 再点击+(加号), 将我们的lib文件夹中的jar包都导入进来
- 创建一个普通User类, 在这个类中创建一个普通方法
public class User{
public void add(){
System.out.println(add...);
}
}
- 创建Spring配置文件bean1.xml, 在配置文件中配置要创建的对象
- 我们这里将配置文件放到src中, 而不放置到当前项目底下 , 方便加载此配置文件
- 右击src点击XML configuration File 然后选择SpringConfig
<beans ...(约束头)>
<!-- 配置User对象创建 -->
<bean id = "user" class = "com.ffyc.User"></bean>
</beans>
-
我们用bean标签来配置User对象的创建, 其中的id属性是用来标识此对象的一个唯一标识而已, 并不是对象名, class属性是配置的对象的全类名
- 进行测试代码编写:
public class TestSpring5{
@Test
public void testAdd(){
//1. 加载Spring配置文件, 获得到一个上下文对象, 其实也是一个工厂对象
ApplicationContext context = new ClassPathXmlApplicationContext("bean1.xml");
//2. 获取配置文件中创建的对象
User user = context.getBean("user",User.class);
//3. 测试
System.out.println(user);
user.add();
}
}
- 注意: 这里使用到了一个ClassPathXmlApplicationContext类, 这个类和FileSystemXmlApplicationContext类都是ApplicationContext接口的实现类, 这两个实现类的区别就是:
- ClassPathXmlApplicationContext类加载Spring配置文件的时候是相对于类路径的
- 什么是类路径? —> 就是我们的src下就是类路径, 因为我们可以发现我们的一个类的包名就是从src下开始的, 而包名其实就是类路径
- FileSystemXmlApplicationContext类加载Spring配置文件的时候是要填入配置文件在系统中的位置的
- 就是从盘符开始填充, 就是填充对应的Spring配置文件在本机系统中存储的位置
- ClassPathXmlApplicationContext类加载Spring配置文件的时候是相对于类路径的