SpringBoot 2.x 사용자 정의 응용 프로그램.properties 매개 변수 설정

1933 단어
'정통SpringMVC'의 코드를 따라 두드렸을 때 머리가 없는 set/get 생성 방법은 자신을 함정에 빠뜨렸고 생성된 set 방법의 매개 변수는 Resource 유형이 되어 아무리 해도 전환에 성공할 수 없었다.
  • 수정application.properties의 내용
  • upload.pictures.uploadPath=file:./pictures #      src     
    upload.pictures.anonymousPicture=classpath:/images/anonymous.png
  • 설정 클래스 코드는 모두 set 방법으로 파라미터를 연결하고 set 방법 중의 파라미터 유형
  • 을 주의한다.
    @ConfigurationProperties(prefix = "upload.pictures")
    public class PictureUploadProperties {
        private Resource uploadPath;
        private Resource anonymousPicture;
    
        public Resource getUploadPath() {
            return uploadPath;
        }
        
        //       uploadPath         ,    set       
        public void setUploadPath(String uploadPath) throws IOException {
            this.uploadPath = new DefaultResourceLoader().getResource(uploadPath);
            if (!this.uploadPath.getFile().isDirectory()) {
                throw new IOException("Directory " + uploadPath + " does not exist");
            }
        }
    
        public Resource getAnonymousPicture() {
            return anonymousPicture;
        }
        
        public void setAnonymousPicture(String anonymousPicture) throws IOException {
            this.anonymousPicture = new DefaultResourceLoader().getResource(anonymousPicture);
            if (!this.anonymousPicture.getFile().isFile()) {
                throw new IOException("File " + anonymousPicture + " does not exist");
            }
        }
    }
    
  • Main에서 매개변수 구성 켜기
  • @SpringBootApplication
    @EnableConfigurationProperties({PictureUploadProperties.class})
    public class MasterSpringMvcApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(MasterSpringMvcApplication.class, args);
        }
    
    }

    https://lixi.fun/2019/05/04/spring-boot-ConfigurationProperties/
    전재 대상:https://www.cnblogs.com/lixifun/p/10810296.html

    좋은 웹페이지 즐겨찾기