导入jar包
- 4+1:4个核心+1个依赖
- Beans:spring-beans-5.2.3.RELEASE.jar
- Core:spring-core-5.2.3.RELEASE.jar
- Context:spring-context-5.2.3.RELEASE.jar
- SpEL:spring-expression-5.2.3.RELEASE.jar
- commons-loggins:commons-longging-1.2.jar
- .jar、sources.jar及javadoc.jar区别
- .jar是开发所需要的字节码jar包;
- sources.jar是源码jar包;
- javadoc.jar是api开发文档jar包。
项目目录
项目代码
配置文件xml
常用名称:applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 配置bean -->
<bean id="UserService" class="com.zhangzibu.spring.ioc.service.impl.UserServiceImpl"></bean>
</beans>
-
<bean>:配置需要创建的对象
-
id:用于之后从Spring容器获得实例时使用的
-
class:需要创建实例的全限定类名
-
Java代码
接口
package com.zhangzibu.spring.ioc.service;
public interface UserService {
void hello(String para);
}
实现类
package com.zhangzibu.spring.ioc.service.impl;
import com.zhangzibu.spring.ioc.service.UserService;
public class UserServiceImpl implements UserService {
@Override
public void hello(String para) {
System.out.println("Hello " + para);
}
}
测试类
package com.zhangzibu.spring;
import com.zhangzibu.spring.ioc.service.UserService;
import com.zhangzibu.spring.ioc.service.impl.UserServiceImpl;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class SpringTest {
@Test
public void testIoc(){
// 之前开发
UserService userServiceNew = new UserServiceImpl();
userServiceNew.hello("new 张子布");
// 从Spring容器中获得
// 1.获得容器
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("/applicationContext.xml");
// 2.获得实例对象
UserService userServiceIoc = (UserService) applicationContext.getBean("UserService");
userServiceIoc.hello("IOC 张子布");
}
}
结果
Hello new 张子布
Hello IOC 张子布