본문 바로가기
IT/Spring

외부 파일 이용

by 봉즙 2019. 7. 29.

resources : 이미지, property, xml 등

Context -> Enviroment -> PropertySources

 

Enviroment : 외부에 있는 파일을 불러오기 위해

getProperty : 외부에서 불러온 파일에 접근

 

ctx.getEnvironment()를 통해서 파일을 메모리에 올려주어 id, pw등을 얻어오는 것이 가능하다.

env.getProppertySources()
추가 : propertySources.addLast()
추출 : env.getProperty 를 통해 프로퍼티 추가및 추출을 진행

 

        ConfigurableApplicationContext ctx2 = new GenericXmlApplicationContext();
        ConfigurableEnvironment env = ctx2.getEnvironment();
        MutablePropertySources propertySources = env.getPropertySources();//리소스 폴더에 대한 접근

        try{
            propertySources.addLast(new ResourcePropertySource("classpath:admin.properties"));//텍스트 파일을 메모리에 올린다.
            System.out.println(env.getProperty("admin.id"));//key
            System.out.println(env.getProperty("admin.pw")+"\n");//value
        } catch (IOException e) {
            e.printStackTrace();
        }

폴더 구조 하나 하나를 객체로 만들며 컨테이너 안에서 IoC리소스 전체를 컨트롤 하도록 만들어준다.

사용시에는 env.getProperty()를 사용한다.

afterPropertyiesSet()이 호출되기전에 컨테이너가 Environment()를 호출한다. property를 전체적으로 관리하는 Environment()를 호출

 

<context:property-placeholder location="classpath:admin.properties, classpath:subAdmin.properties"/>

위의 Environment()에서 사용한 객체 생성, 설정을 모두 처리하여 메모리에 올라간 상태로 만들어 준다.

'IT > Spring' 카테고리의 다른 글

한글 처리 web.xml  (0) 2019.07.31
MVC  (0) 2019.07.30
Scope  (0) 2019.07.26
컨테이너와 bean의 생명 주기  (0) 2019.07.26
javaconfig이용  (0) 2019.07.25

댓글