2013-03-22 5 views
0

저는 봄과 봄에 친숙합니다. 응용 프로그램을 빌드하고 속성 파일에서 키 값 쌍을 읽으려고합니다.봄철에 속성 파일의 값을 사용하십시오.

myconfig.properties 파일을 만들어 src/main/resources/META-INF/spring /에 저장했습니다.

## My Configuration settings 
myconfig.url=https://1.2.3.4/api.php 
myconfig.username=user1 
myconfig.password=password1 

지금 내가 값에 액세스하려고 내 클래스 파일에서 같은 디렉토리

<bean id="MyConfig" class="com.test.client.MyClient"> 
    <property name="url" value="${myconfig.url}" /> 
    <property name="username" value="${myconfig.username}" /> 
    <property name="password" value="${myconfig.password}" /> 
</bean> 

에 appilcationContext.xml에 빈 설정을 추가,하지만 난 얻을 : 파일의 내용입니다 파일을 찾을 수 없음 오류

 package com.test.client; 

    import org.springframework.context.support.AbstractApplicationContext; 
    import org.springframework.context.support.ClassPathXmlApplicationContext; 
    import org.springframework.roo.addon.javabean.RooJavaBean; 
    import org.springframework.roo.addon.jpa.activerecord.RooJpaActiveRecord; 
    import org.springframework.roo.addon.tostring.RooToString; 
    import org.springframework.util.LinkedMultiValueMap; 
    import org.springframework.util.MultiValueMap; 
    import org.springframework.web.client.RestTemplate; 

    @RooJavaBean 
    @RooToString 
    @RooJpaActiveRecord 
    public class MyClient { 

     private String url; 

     private String username; 

     private String password; 


     public static String login() 
{ 
    // Construct the spring application context 
    AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); 

    MyClient config = (MyClient) context.getBean("MyConfig"); 

    // Register hook to shutdown Spring gracefully 
    // See http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/beans.html#beans-factory-shutdown 
    context.registerShutdownHook(); 

    String token = null; 

    final String url = config.getUrl(); 
    final String username = config.getUsername(); 
    final String password = config.getPassword(); 

    .... 

어떤 도움을 주셔서 감사합니다! 가장 좋은 방법은 인터페이스 ApplicationContextAware를 구현하는 것입니다 그러나

답변

1

AbstractApplicationContext context = new ClassPathXmlApplicationContext("classpath*:META-INF/spring/applicationContext.xml"); 

을보십시오.

스테파노

+0

위대한, 그게 내 문제를 해결. 감사! – mbs

+0

반가워요. 안녕. –

관련 문제