dev.Log
DI 기초예제 본문
프로젝트생성 : spring legacy project -> spring mvc project -> com.khjk.{프로젝트명}
package com.khjk.spring_pjt_board;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
public class MainClass {
public static void main(String[] args) {
String configLocation = "classpath:applicationCTX.xml";
AbstractApplicationContext ctx = new GenericXmlApplicationContext(configLocation);
MyCalculator myCalculator = ctx.getBean("myCalculator", MyCalculator.class);
myCalculator.add();
myCalculator.sub();
}
}
MainClass.java
package com.khjk.spring_pjt_board;
public class MyCalculator {
private Calculator calculator;
private int firstNum;
private int secondNum;
public Calculator getCalculator() {
return calculator;
}
public void setCalculator(Calculator calculator) {
this.calculator = calculator;
}
public int getFirstNum() {
return firstNum;
}
public void setFirstNum(int firstNum) {
this.firstNum = firstNum;
}
public int getSecondNum() {
return secondNum;
}
public void setSecondNum(int secondNum) {
this.secondNum = secondNum;
}
public void add() {
calculator.addition(firstNum, secondNum);
}
public void sub() {
calculator.subtraction(firstNum, secondNum);
}
}
MyCalculator.java (위 세개 파일 위치 : src/main/java)
package com.khjk.spring_pjt_board;
public class Calculator {
public void addition(int f, int s) {
int result = f + s;
System.out.println(f + "+" + s +"=" + result );
}
public void subtraction(int f, int s) {
int result = f - s;
System.out.println(f + "-" + s + "=" + result);
}
}
Calculator.java
<?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="calculator" class="com.khjk.spring_pjt_board.Calculator"/>
<bean id="myCalculator" class="com.khjk.spring_pjt_board.MyCalculator">
<property name="calculator">
<ref bean="calculator"/>
</property>
<property name="firstNum" value="10"></property>
<property name="secondNum" value="4"></property>
</bean>
</beans>
applicationCTX.xml (위치: src/main/resources 하위)
'BACKEND.*' 카테고리의 다른 글
Redis (0) | 2020.07.09 |
---|---|
beanconfig 예제 (0) | 2020.07.09 |
커서기반 페이지네이션 (0) | 2020.07.08 |
코드 커버리지 (0) | 2020.07.07 |
sql dummy data 생성하기 (1) | 2020.07.07 |
Comments