一、初始环境搭建
1、添加Maven依赖:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.5.RELEASE</version>
</dependency>
2、在resources目录下创建spring配置文件,一般命名为
applicationContext.xml:
3、开发示例:
创建待实现接口UserDao、
public interface UserDao {
public void save();
}
创建实现类UserDaoImpl、
public class UserDaoImpl implements UserDao {
@Override
public void save() {
System.out.println("SpringTest");
}
}
在applicationContext.xml中通过<bean>创建对象、
<?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">
<!--id为对象唯一性标识,class为类地址-->
<bean id="userDao" class="com.impl.UserDaoImpl"></bean>
</beans>
通过spring引用类,实现类与类间的解耦、
public class userTest {
public static void main(String[] args) {
//加载spring配置文件,创建spring容器实例化对象
ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml");
//getBean( "配置文件中bean的id" , "返回值类型,默认为Object" )
UserDao u = (UserDao) app.getBean("userDao");
u.save();
}
}
运行:
二、loC
loC,即控制反转(Inversion of Control):
通过Spring提供的loC容器,可以将对象间的依赖关系(Control)转交(Inversion)给Spring控制,避免硬编码所造成的过度耦合。用户不再需要为单例模式类等底层需求编写代码,可以更专注于上层的应用。