ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링 util:map 을 이용하여 커스텀 태그 사용하기 이모저모
    Etc 2018. 11. 1. 09:00

    #spring의 xml에서 util:map에 설정한 값들을 리플렉션 하능 방법 및 커스텀 @어노테이션 사용하기


    1. <util:map key-type="" value-type="객체" >

    1)value-type이 객체 이길 원할떄 =>  <bean을 parent용으로 하나 만든다

    2)<entry> <bean parent=" 가) 기준으로id명" /> </entry>


    2. ApplicationContext의 getBean()을 이용하여 Object 인스턴스를 생성

    1) BeanFactory => lazy Initialization 이며 getBean 메소드가 호출되기까지 객체가 생성을 미룬다

                                        Bean을 늦게 로딩한다.

    2) ApplicationContext => Context를 시작시킬 때 모든 Bean을 미리 로딩 함으로서 Bean이 필요할 때 즉시 사용 가능하다.

    가)ClassPathXmlApplicationContext => 클래스 패스에 위치한 하나의 설정파일을 읽어 옴

    나)FileSystemXmlApplicationContext => 지정 경로에 위치한 여러 설정파일을 읽어 옴

    3) WebApplicationContext => ApplicationContext에 getServletContext가 추가된 메소드이며 서블릿 컨텍스트를 이용한 몇가지 

    빈 생애 주기 스코프(애플리케이션, request, 세션 등) 추가된 것.

    3. proxy 클래스의 기존 클래스를 리턴(리플렉션 하여 객체 생성)

    1) proxy 클래스

    가) 또다른 객체를 대신하는 객체를 두는 방법. 

    나) 프록시 클래스는 어떤 객체를 대신하여 동작하게 하는 장치이다.

          다) 함수로 부터 반환되는 프록시 객체는 임시객체이기 때문에 객체 생성 소멸과정이 저절로 수반되어야 한다. 생성/소멸에 드는 비용은 공짜가 아니다.

    2)Class.forName() 

    : 지정한 오브젝트를 반환

    => JVM에게 해당 클래스의 정보를 로드 시킨 후 반환하는 것을 의미

    3)Class 클래스=> 클래스의 필드, 메서드, 클래스의 종류를 담은 메타 클래스이다.


    4.  Method 객체 생성 => ReflectionUtils.findMethod()


    5. MethodParameter 객체 생성


    6. MethodParameter의 getParameterAnnotaion()으로 어노테이션 객체 생성




Designed by Tistory.