저는 Spring 3.1.0과 함께 일하고 있습니다. 나는 봄이 XML 파일을 읽는 방법을 이해하려고 노력하고있다. bean 정의에서 봄이 모호한 조건을 다루는 방법을 이해하려고 노력 중이다.부모가있는 xml에 정의 된 빈에 대해 봄에 생성자를 선택하는 방법은 무엇입니까?
예를
위해 나는 다음과 같이 alarm2.xml
가 Alarm.java
package com.anshbansal.alarm2;
public class Alarm {
private String type;
private int volume;
private int hour;
public Alarm() {
}
public Alarm(String type, int volume, int hour) {
this.type = type;
this.volume = volume;
this.hour = hour;
}
public Alarm(String type, int volume) {
this.type = type;
this.volume = volume;
}
public Alarm(int volume, String type) {
this.type = type;
this.volume = volume;
}
public void setType(String type) {
this.type = type;
}
public void setVolume(int volume) {
this.volume = volume;
}
public void setHour(int hour) {
this.hour = hour;
}
@Override
public String toString() {
return "Alarm{" +
"type='" + type + '\'' +
", volume=" + volume +
", hour=" + hour +
'}';
}
}
내 스프링 XML 파일이 있습니다. 이 int
이 볼륨으로 이동하고 시간에 갈 것이다하는 즉시 명확하지 않다으로
<?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="propertyRandom" abstract="true">
<constructor-arg value="23" type="int"/>
</bean>
<bean id="alarm1" class="com.anshbansal.alarm2.Alarm" parent="propertyRandom">
<constructor-arg value="10" type="int"/>
<constructor-arg value="Ringing" />
</bean>
</beans>
모호성이있다. 인쇄 할 경우 다음을 얻습니다.
Alarm{type='Ringing', volume=23, hour=10}
그러면 스프링이 호출 할 생성자를 확인하기 위해 XML 파일을 어떻게 읽습니까? 부모님, 콩? 그것은 어딘가에 문서화되어 있습니까?
index
및 name
을 속성으로 지정하는 것과 같은 방법이 있지만 그와 같은 모호한 조건을 처리하는 방법에 대해서도 알고 있어야합니다. 그래서 내가 이것을 묻고 있습니다.
부모의 특정 'int'가 시간이 아닌 볼륨에 어떻게 할당되었는지는 설명하지 않습니다. 설명해 주시겠습니까? –
합병 언급에 대한 답변을 수정했습니다. –
주셔서 감사합니다.어떻게이 정보를 찾으십니까? –