신규 블로그를 만들었습니다!

2020년 이후부터는 아래 블로그에서 활동합니다.

댓글로 질문 주셔도 확인하기 어려울 수 있습니다.

>> https://bluemiv.tistory.com/

이번에는 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 강좌'를 요약하여 작성하였습니다.

>> 유튜브 - SeoulWiz 

 

 

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기