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

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

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

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

프로퍼티 파일을 이용해서 빈 생성 및 설정하기

 

Environment 객체를 사용하지 않고,

바로 property파일에서 설정 값을 가지고 온다.

 

이방법은 매우 간단하다.

 

파일은 4가지만 있으면 된다.

 

Main.java (메인)

AdminConnection.java (VO)

admin.properties (프로퍼티 파일)

applicationCTX.xml (context)

 

 

프로퍼티 파일을 xml 파일로 가져오기

<context:property-placeholder location="classpath:프로퍼티경로"/>

 

<property name="adminId">

<value>${admin.id}</value>

</property>

<property name="adminPwd">

<value>${admin.pwd}</value>

</property>

 

위와 같이 설정하면,

admin.id, admin.pwd를 프로퍼티 파일에서 가져온다.

 

Main.java

package com.edu.exam01;
 
import org.springframework.context.support.GenericXmlApplicationContext;
 
public class Main {
 
    public static void main(String[] args) {
 
        GenericXmlApplicationContext gCtx = new GenericXmlApplicationContext();
        gCtx.load("classpath:applicationCTX.xml");
        gCtx.refresh();
        
        AdminConnection adminConnection = gCtx.getBean("adminConnection", AdminConnection.class);
        System.out.println(adminConnection.toString());
        
        gCtx.close();
    }
}
 
​

 

 

AdminConnection.java

package com.edu.exam01;
 
public class AdminConnection {
 
    private String adminId;
    private String adminPwd;
 
    // constructor
    public AdminConnection() {
 
    }
 
    public AdminConnection(String adminId, String adminPwd) {
        this.adminId = adminId;
        this.adminPwd = adminPwd;
    }
 
    // get set method
    public String getAdminId() {
        return adminId;
    }
 
    public void setAdminId(String adminId) {
        this.adminId = adminId;
    }
 
    public String getAdminPwd() {
        return adminPwd;
    }
 
    public void setAdminPwd(String adminPwd) {
        this.adminPwd = adminPwd;
    }
 
    @Override
    public String toString() {
        return "AdminConnection [adminId=" + adminId + ", adminPwd=" + adminPwd + "]";
    }
 
}​

그냥 평범한 VO 파일이다.

별다른 설정은 필요없다.

 

applicationCTX.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"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd">
    
    <context:property-placeholder location="classpath:admin.properties"/>
    
    <bean id="adminConnection" class="com.edu.exam01.AdminConnection">
        <property name="adminId">
            <value>${admin.id}</value>
        </property>
        <property name="adminPwd">
            <value>${admin.pwd}</value>
        </property>
    </bean>
 
</beans>​

 

${} 를 이용해서,

admin.pproperties의 값들을 가져온다.

 

 

admin.properties

admin.id=hong
admin.pwd=12341234​

 

 

 

결국 가장 중요한 파일은

applicationCTX.xml 이며

이 context 파일만 바꿔주면, 편하게 property 파일을 가져올 수 있다.

(context:property-placeholder 태그)

 

※ 이 글은 Seoul Wiz - '실전 Spring 강좌'를 요약하여 작성하였습니다.

>> 유튜브 - SeoulWiz

 

[프리렉]서블릿/JSP웹 프로그래밍 with HTML+CSS+XML+자바스크립트

 

www.youtube.com

 

 

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