신규 블로그를 만들었습니다!
이번에는 bean 생성시 property 설정하는 방법에 대해 알아 보도록 하겠습니다.
일단 코드를 살펴 보겠습니다.
MyInfo.class
package com.di.ex02;
import java.util.List;
public class MyInfo {
private String name;
private double height;
private double weight;
private List<String> hobbys;
private BMICalculator bmiCalculator;
// get, set method
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public double getWeight() {
return weight;
}
public void setWeight(double weight) {
this.weight = weight;
}
public List<String> getHobbys() {
return hobbys;
}
public void setHobbys(List<String> hobbys) {
this.hobbys = hobbys;
}
public BMICalculator getBmiCalculator() {
return bmiCalculator;
}
public void setBmiCalculator(BMICalculator bmiCalculator) {
this.bmiCalculator = bmiCalculator;
}
public void bmiCalc() {
bmiCalculator.bmiCalc(height, weight);
}
public void getInfo() {
System.out.println("이름 : " + name);
System.out.println("키 : " + height);
System.out.println("몸무게 : " + weight);
System.out.println("취미 : " + hobbys);
bmiCalc();
}
}
여기서 일반 변수 name, height, weight, hobbys 는 <value> 태그를 이용합니다.
hobbys의 경우는 리스트 형태이기 때문에
<list>
<value></value>
...
</list>
<list>태그 추가적으로 사용합니다.
객체의 경우에는 <ref>태그를 이용합니다.
정리를 하자면 아래와 같습니다.
[일반 변수]
<property name = "setter함수의 set을 지우고 앞글자를 소문자로 바꾼 변수이름">
// 예를들어, setName() >> name, setHeight() >> height
<value>변수값</value>
</property>
[리스트 형태의 변수]
<property name = "setter함수의 set을 지우고 앞글자를 소문자로 바꾼 변수이름">
// 예를들어, setHobbys() >> hobbys
<list>
<value>변수값</value>
</list>
</property>
<property name = "앞문자를 소문자로 바꾼 객체이름">
// 예를들어, MyInfo.class >> myInfo
<ref name="참조할 객체 bean ID">
</property>
위의 형태를 보시고 아래 XML 파일을 확인하시면 이해를 하실 수 있습니다.
xml 파일
<?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="myInfo" class="com.di.ex02.MyInfo">
<property name="name">
<value>hongku</value>
</property>
<property name="height">
<value>182.4</value>
</property>
<property name="weight">
<value>80.6</value>
</property>
<property name="hobbys">
<list>
<value>영화</value>
<value>음악감상</value>
<value>게임</value>
</list>
</property>
<property name="bmiCalculator">
<ref bean="bmiCalculator"/>
</property>
</bean>
</beans>
※ 이 글은 Seoul Wiz - '실전 Spring 강좌'를 요약하여 작성하였습니다.
관련글
2018/01/11 - [WEB/SpringMVC] - SpringMVC :: 스프링(Spring) DI(Dependency Injection, 의존성 주입) #2
2018/03/10 - [WEB/SpringMVC] - SpringMVC :: java 파일을 이용해서 Bean(빈) 생성하기
'WEB > SpringMVC' 카테고리의 다른 글
SpringMVC :: 스프링(Spring)의 범위 scope, 싱글톤(singleton) (299) | 2018.03.10 |
---|---|
SpringMVC :: 스프링 컨테이너의 생명주기, 빈의 생명주기 (Life cycle), InitialzingBean, DisposableBean, @PreDestroy, @PostConstruct (1119) | 2018.03.10 |
SpringMVC :: java 파일을 이용해서 Bean(빈) 생성하기 (152) | 2018.03.10 |
SpringMVC :: 스프링(Spring) DI(Dependency Injection, 의존성 주입) #2 (0) | 2018.01.11 |
SpringMVC :: 스프링 프레임워크 설치하기 #1 (0) | 2018.01.11 |
최근댓글