Please Enable JavaScript!
Gon[ Enable JavaScript ]

MessageSource 자동로딩과 방법

자바(JAVA)
반응형
ResourceBundleMessageSource : 클래스 패스에 포함된 내용을 읽는다.  WEB-INF/classes/
ReloadableResourceBundleMessageSource : 시간을 주면 자동로딩이 가능하고 클래스 패스 외부에
   설정파일들을 놓고 로딩할수 있다.

ResourceBundleMessageSource 를 사용하게 되면 WEB-INF/classes 폴더아래에 resource 파일들을 둬야된다.
설정파일이 소스폴더가 아닌 다른 곳에 모아놓고 관리하고 싶은 경우가 있다.

ReloadableResourceBundleMessageSource 를 쓰게 되면WAS 를 재로딩하지 않아도 수정된 resource 파일들을
자동으로 읽어 들이게 할수 있다. 그리고 파일의 절대경로를 줘서 로딩을 하게 할수 있다.
cacheSeconds 는 시간을 말하는데 5 초로 설정을 했다. 5 초마다 변화에 대한 체크를 해서 재로딩을 하게 된다.
<bean id="messageSource" 
          class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    <property name="basenames">
        <list>
            <value>/WEB-INF/config/DBQuery</value>
            <value>/WEB-INF/config/Messages</value>
        </list>
    </property>
    <property name="cacheSeconds" value="5"/>
</bean>


다음은 파일의 절대경로를 줘서 설정한 예이다. 재로딩이 부담스러우면 0으로 설정을 하면된다.
<bean id="messageSource"
          class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    <property name="basenames">
         <list>
              <value>file:E:/project/WEB-INF/classes/messages/messages</value>
         </list>
    </property>
    <property name="cacheSeconds" value="0"/>
</bean>
반응형
Posted by 녹두장군1
,