이번 편에서는 훨씬 사용법이 간편해진 GenericXml에 대해 알아보자.
앞의 과정을 축소화 한 것이라, 건너뛸 부분이 많아서 살펴볼 내용이 없다.
이번 편은 가벼운 마음으로 봐도 좋다.
우선 사용법은 이러하다.
ApplicationContext context = new GenericXmlApplicationContext("text.xml");
ApplicationContext 선언 부분은 앞과 동일하므로 건너뛰고,
생성자 부분을 보면 이러하다.
참 직관적인 코드이다.
Bean을 등록하는 과정은 크게 Bean 정의 등록 -> Bean 객체 등록으로 나뉜다.
refresh()는 앞의 Bean 객체 등록과 완전히 동일한 메소드이다.
그럼 load()는? 그렇다. Bean 정의 등록하는 메소드이다.
주석에도 나와있듯이, XML로부터 정의를 읽어내는 과정이다.
그리고 내부를 보니 reader의 loadBeanDefinitions() 메소드를 사용한다.
따라서 이것 역시 동일한 파싱 과정을 거침을 알 수 있다.
자! 이렇게 해서 GenericApplicationContext의 과정에 대해 자세하게 알아보았다.
이렇게 자세하게 알아둘 때의 장점은 나중에 사용자 설정을 할 때 쉽게 할 수 있다는 점과,
오류가 뜨면 바로 처리할 수 있다는 점이다.
너무 자세한 감이 있지만, 이렇게 정리해두고 필요할 때마다 본다면 후에 큰 도움이 될 것이다.
그럼 다음 시간에는 WebApplicationContext에 대해 알아보도록 하겠다! : )