标签:获取 开始学习 git save out users 工作 文件的 ring
?? ?? ? 虽然Spring已经火了这么多年了,工作中也有偶尔接触到,却没有怎么深入了解。现在作为一个小白开始学习,也是以此博客作为一个记录,如果有不对的地方,希望大家指出来,共同探讨。
?? ?? ? 今天跟大家一起学习下有关spring中ApplicationContext的相关内容。
?? ?? ? bean是spring中的管理的对象,所有的组件在spring中都会当成一个bean来处理。bean在spring容器中运行,spring容器负责创建bean。
public interface AccountService {
void saveAccount();
}
业务层接口的实现类:AccountServiceImpl
public class AccountServiceImpl implements AccountService {
@Override
public void saveAccount() {
}
}
定义了持久层操作接口:AccountDao
public interface AccountDao {
void saveAccount();
}
定义了持久层操作实现类:AccountDaoImpl
public class AccountDaoImpl implements AccountDao {
@Override
public void saveAccount() {
System.out.println("保存账户成功");
}
}
(1)我们通过ClassPathXmlApplicationContext来创建bean
public class TestClient {
/**
* 获取spring的IOC容器,并根据id获取对象
*
* @param args
*/
public static void main(String[] args) {
// 1、获取核心容器
ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");
AccountService accountService = (AccountService) context.getBean("accountService");
AccountDao accountDao = context.getBean("accountDao", AccountDao.class);
System.out.println(accountService);
System.out.println(accountDao);
}
}
我们可以看到这两个bean已经创建成功了。
(2)我们通过FileSystemXmlApplicationContext来创建bean,这个时候,我们需要指定配置文件的绝对路径
public class TestClient {
/**
* 获取spring的IOC容器,并根据id获取对象
*
* @param args
*/
public static void main(String[] args) {
// 1、获取核心容器
ApplicationContext context = new FileSystemXmlApplicationContext("//Users/apple/Documents/git-source/my-source/spring_test_02/src/main/resources/bean.xml");
AccountService accountService = (AccountService) context.getBean("accountService");
AccountDao accountDao = context.getBean("accountDao", AccountDao.class);
System.out.println(accountService);
System.out.println(accountDao);
}
}
/Users/apple/Documents/git-source/my-source/spring_test_02/src/main/resources/bean.xml是我本地文件的绝对路径
运行结果:
他也拿到了两个bean。
关于第三种AnnotationConfigApplicationContext用注解的方式创建bean,我们下一次在演示。
标签:获取 开始学习 git save out users 工作 文件的 ring
原文地址:https://www.cnblogs.com/liufei-yes/p/12773426.html