2025-01-21






INFO : org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from class path resource [mydao.xml]
INFO : org.springframework.context.support.GenericXmlApplicationContext - Refreshing org.springframework.context.support.GenericXmlApplicationContext@32cf48b7: startup date [Tue Jan 21 21:14:52 KST 2025]; root of context hierarchy
INFO : org.springframework.beans.factory.support.DefaultListableBeanFactory - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@687e99d8: defining beans [mysql,oracle,service]; root of factory hierarchy
MySqlDAO 데이터베이스 연동입니다
INFO : org.springframework.context.support.GenericXmlApplicationContext - Closing org.springframework.context.support.GenericXmlApplicationContext@32cf48b7: startup date [Tue Jan 21 21:14:52 KST 2025]; root of context hierarchy
INFO : org.springframework.beans.factory.support.DefaultListableBeanFactory - Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@687e99d8: defining beans [mysql,oracle,service]; root of factory hierarchy
package com.spring.di03;
import org.springframework.context.support.GenericXmlApplicationContext;
public class Main {
public static void main(String[] args) {
GenericXmlApplicationContext contaier =
new GenericXmlApplicationContext("mydao.xml");
DAOImpl dao = (DAOImpl)contaier.getBean("service");
dao.connect();
contaier.close();
}
}
package com.spring.di03;
public interface DAO {
void add(); // 추상 메서드
}
package com.spring.di03;
import lombok.Data;
@Data
public class DAOImpl {
private DAO dao;
// 비지니스 로직
public void connect() {
this.dao.add();
}
}
package com.spring.di03;
public class MySqlDAO implements DAO {
@Override
public void add() {
System.out.println("MySqlDAO 데이터베이스 연동입니다");
}
}
package com.spring.di03;
public class OracleDAO implements DAO {
@Override
public void add() {
System.out.println("OracleDAO 데이터베이스 연동입니다");
}
}
<?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 id="mysql" class="com.spring.di03.MySqlDAO"/>
<bean id="oracle" class="com.spring.di03.OracleDAO"/>
<bean id="service" class="com.spring.di03.DAOImpl">
<!-- name="dao" ==> 변수명 -->
<property name="dao">
<ref bean="mysql"/>
</property>
</bean>
</beans>'Spring, Boot > 기초 내용 정리' 카테고리의 다른 글
| Spring(DI)_02_05 (0) | 2025.01.22 |
|---|---|
| Spring(DI)_02_04 (0) | 2025.01.22 |
| Spring(DI)_02_02 (0) | 2025.01.21 |
| Spring(DI)_02_01 (0) | 2025.01.21 |
| Spring(DI)_01_05 (1) | 2025.01.21 |