호출하는 프로세스는 실제 개발 과정의 XML 버전 -Setter 방식으로 주입 시뮬레이션
소스 얻기 github의를
[TOC]
1. 프로젝트 구조
![](https://i.loli.net/2019/05/26/5cea9a0c76bff39411.jpg)
2.jar 같은 패키지와 유지
(3) 다시 쓰기 설정 방법
UserServiceImpl.java
1 2 3 4 5
|
개인 UserDao userDao;
공개 공극 (UserDao userDao) { 이 .userDao = userDao; }
|
beans.xml 환경
1 2 3 4 5 6 7
|
< 콩 ID = "userDaoImpl" 클래스 = "com.hs.dao.impl.UserDaoImpl" />
< 콩 ID = "userServiceImpl" 클래스 = "com.hs.service.impl.UserServiceImpl" > < 속성 이름 = "userDao" > < 심판 콩 = "userDaoImpl" /> </ 부동산 > </ 콩 >
|
완전한 대신에 설정 방법에있어서,private UserDao userDao = new userDaoImpl();
UserController.java
1 2 3 4 5
|
개인 UserService userService;
공개 공극 setUserService (UserService userService) { 이 .userService = userService; }
|
beans.xml 환경
1 2 3 4 5 6 7 8 9 10< 大专栏 Spring学习笔记(七)模拟实际开发过程的调用过程XML版-Setter方式注入/span> 11
|
<bean id="userServiceImpl" class="com.hs.service.impl.UserServiceImpl"> <property name="userDao"> <ref bean="userDaoImpl"/> </property> </bean>
<bean id="userController" class="com.hs.web.UserController" p:userService-ref="userServiceImpl"> </bean>
|
在set方法里代替完成了private UserService userService = new userServiceImpl();
4.测试
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
package com.hs.test;
import com.hs.web.UserController; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;
공공 클래스 MethodTest는 { 공공 무효 test01는 ()는 { 의 ApplicationContext의 ApplicationContext는 = 새로운 ClassPathXmlApplicationContext ( "beans.xml 환경을" ); UserController = applicationContext.getBean 제어기 ( "userController" , UserController.class); controller.add (); } }
|
콘솔 출력 :
UserController 레이어 -> 추가
구현 UserService 클래스 층 -> ADD의
구현 클래스 UserDao 층 -> ADD