2017-10-12 1 views
0

는 내가 알 수 있도록봄 자동 등록

@Component 
@PropertySource(value = "file:${user.home}/.cooperp/app-conf.properties") 
public class ApplicationProperties { 
    @Value("${mysql-location}") 
    private String mysqlLocation; 

    public String getMysqlLocation() { 
     return mysqlLocation; 
    } 

    public void setMysqlLocation(String mysqlLocation) { 
     this.mysqlLocation = mysqlLocation; 
    } 
} 

같은 @PropertySource를 사용하여 속성 파일을 표현하는 간단한 클래스가 파일 만들기 파일은 하나의 부재를 무시하는 봄 것 ignoreResourceNotFound = true을 추가하고를 시동 할 수없는 경우 신청.

봄에 을 작성 하시겠습니까? 파일을 만들거나 무시하거나 예외를 throw하지 마십시오.

+1

'@ PropertySource'의 작업/기능이 아닌 코드를 작성해야합니다. –

+0

어디에서 주요 방법입니까? –

+0

왜이 작업을 수행 하시겠습니까? – PaulNUK

답변

1

보통 우리는 프로젝트 디렉토리와 함께 속성 파일을 유지합니다. 그러나 프로젝트가 외부의 속성을 필요로한다면 파일이 SpringBootApplication 클래스에 존재하는지 확인할 수 있습니다. 그렇지 않으면 속성 파일을 만들 수 있습니다. 코드 예제 :

@SpringBootApplication 
public class SpringDocBotApplication { 

    public static void main(String[] args) { 
     File file = new File("EXPECTED PATH"); 

     try{ 
      if(!file.exists()){ 
       // create propeties file add properties 
      } 
     } catch (IOException e) { 
     //HANDLE EXCEPTION 
     } 
     SpringApplication.run(SpringDocBotApplication.class, args); 
    } 
}