1. Spring使用回顾
自定义 Spring 框架前,先回顾一下 Spring 框架的使用,从而分析 Spring 的核心,并对核心功能进行模拟。
-
数据访问层。定义
UserDao接口及其子实现类:public interface UserDao { public void add(); } public class UserDaoImpl implements UserDao { public void add() { System.out.println("userDaoImpl ...."); } } -
业务逻辑层。定义
UserService接口及其子实现类:public interface UserService { public void add(); } public class UserServiceImpl implements UserService { private UserDao userDao; public void setUserDao(UserDao userDao) { this.userDao = userDao; } public void add() { System.out.println("userServiceImpl ..."); userDao.add(); } } -
定义
UserController类,使用 main 方法模拟 controller 层:public class UserController { public static void main(String[] args) { // 创建spring容器对象 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); // 从IOC容器中获取UserService对象 UserService userService = applicationContext.getBean("userService", UserService.class); // 调用UserService对象的add方法 userService.add(); } } -
编写配置文件。在类路径下编写一个名为
applicationContext.xml的配置文件:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <bean id="userService" class="com.itheima.service.impl.UserServiceImpl"> <property name="userDao" ref="userDao"></property> </bean> <bean id="userDao" class="com.itheima.dao.impl.UserDaoImpl"></bean> </beans>
2026/9/12大约 16 分钟
