본문 바로가기
Spring

2022-11-25 IoC(제어의 역전), DI(의존관계 주입) - setter메소드를 이용해 객체 생성하기 리뷰

by HTT 2022. 11. 26.

- setter메소드를 이용해 객체를 생성하는 법도 생성자를 이용할 때와 비슷하다. 다만 xml파일에서 bean을 만들 때 <property>를 사용한다.

변하지 않는 값은 생성자 주입을, 변하는 값은 수정자 주입을 사용할 수 있는데 웬만하면 생성자 주입을 사용하는 것이 좋다. 

생성자 => <constructor-arg ref="생성할 객체의 bean id"/>
setter메소드 => <property name="멤버변수명" ref="생성할 객체의 bean id"/>

 

실습 하기 

 

클래스의 기본생성자와 set, get메소드를 만들어주고 <property> 태그 안에 객체에서 사용하는 멤버변수명과 생성할 객체의 id를 써주면 끝~!

 

//간략하게 적음
public class Player implements AbstractPlayer{
	AbstractDice d; 
    public Player() {
		
	}
    public void setD(AbstractDice d) {
		this.d = d;
	}
}
//매개변수 3개 생성자
<bean id="service" class="di.setter01.ServiceImpl">
	<property name="name" value="고양이"/>
	<property name="msg" value="귀엽다"/>
	<property name="logic" ref="logic"/>
</bean>

 

 

 

*** setter메소드가 있는지 꼭 확인하기!!!!!!!!!!!!!

댓글