SPRING

DI XML / SpEL (property 방식)

nang. 2019. 3. 19. 01:54
반응형
SMALL

- Spring Expression Language (SpEL)

: 값이나 객체를 bean의 property나 생성자 인자로 전달하는 간결한 방법 제공

: #{...}

: ID를 통해 bean 참조가 가능

: Bean의 property를 접근하거나 메소드 호출 가능

: 산술, 관계, 논리 연산 지원

: 정규식을 이용한 값 매칭

: Collection 처리



: #{...} 주로 이 안에 값 자체가 들어감

<property name="count" value="#{93}" />



: 만약 객체가 들어가는거면 #{...} 이 안에 객체가 직접 들어가는게 아니고 ...라는 id를 갖는 객체를 주입하겠다~ 라는 뜻

<property name="instrument" value="#{piano}" />

// id가 piano인 객체를 주입하겠다.



: 어떤 객체가 가지고 있는 필드를 인자로? 주입하겠다~

<property name="song" value="#{kenny.song}" />

// kenny가 가지고 있는 song을 주입하겠다.

// 주의! 만약 song이 private이면 getter 메소드(getSong())를 호출해야함 (--> getter가 존재해야함 그니까 걍 세터만들 때 게터도 만들어 놔)



: 메소드를 호출해서 주입하겠다~

<property name="song" value="#{songSelector.selectSong()}" />



: T()

// () 안에 있는 인자에 해당하는 Class 객체를 제공함

// 그니까 () 안에 클래스 패키지명이 들어감

<property name="multiplier" value="#{T(java.lang.Math).PI />

// Math 클래스의 PI 값 참조


<property name="randomNumber" value="#{T(java.lang.Math).random()}" />

// Math 클래스의 random() 호출

반응형
LIST

'SPRING' 카테고리의 다른 글

DI Annotation  (0) 2019.03.25
Auto-wiring  (0) 2019.03.25
DI XML / Collection Wiring (property 방식)  (0) 2019.03.19
DI XML / 의존 관계 설정 2 (property 방식)  (0) 2019.03.19
DI XML / 의존 관계 설정 1 (생성자 방식)  (0) 2019.03.18