inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 프레임워크 핵심 기술

스프링 AOP: @AOP

AOP execution expression 질문입니다.

해결된 질문

342

개발한입

작성한 질문수 17

2

예전에 부트기반이 아닌 스프링 프레임웤에서는

<aop:conifg> 라는 XML ApplicationContext로 관리했던 것으로 기억이 납니다.

기선님의 강의의 execution expression을 보면

* me.whiteship..*.EventService.*(..) 이런식으로 되어있는데

제가 알기로는 앞이 리턴타입, 패키지명.. = 패키지명으로 시작하는 모든패키지 *클래스명 .* 모든메소드와 매개변수로 알고 있는데

기선님꺼에서는

* me.whiteship..*.EventService.*(..)

클래스 명 앞에 *.가 붙어있는데 이건 어떤 의미일까요?

제 인텔리j에서는 no Advice Method라고 나왔고

* me.whiteship..*.EventService.*(..)를

* me.whiteship..*EventService.*(..)로 수정하니 제대로 동작하였습니다.

spring java

답변 3

1

백기선

말씀하신게 맞네요. 전 접근제한 패턴으로 생각했는데 그게 생략된거고 리턴 타입이군요. 그리고 ..*. 에 대한 설명은 이해하신게 맞습니다.

0

개발한입

이런 자료를 봐서 그렇게 말씀드렸습니다.

스프링 레퍼런스와 토비 책을 보니

execution(modifiers-pattern? ret-type-pattern declaring-type-pattern? name-pattern(param-pattern)
          throws-pattern?)

https://docs.spring.io/spring/docs/2.0.x/reference/aop.html



이부분에 대해서

execution([접근제한자 패턴] 리턴타입패턴 [타입패턴.]이름패턴(파라미터패턴) [throws 예외패턴]) 인것 같은데
위에 코드의 ?로 적힌 부분은 생략이 가능한 것 같아서

* me.whiteship..*.EventService.*(..) 이 경우에는 리턴타입이 상관없고 패키지는 me.whiteship 속한 여러개이고, 클래스는 *EventService로 끝는 클래스의 모든 메소드에 매개변수 상관없이 적용시킨다라고

이해하면 맞는 걸까요?

0

백기선

제일 처음에 오는 *는 리턴타입이 아닙니다. 그렇게 알고 계신 근거는 무엇인가요? 

execution expression 문법은 제가 설명해드릴 수도 있지만 직접 찾아보시기 바랍니다. 그것도 학습입니다.

BeanFactory와 ApplicationContext 중 사용하고 싶은 컨테이너를 설정 할 수 있나요?

0

381

1

프로젝트 생성에 관련한 질문

0

376

1

안녕하세요 강의 내용을 듣다가 궁금점이 생겨 글을 남기게 되었습니다.

0

371

1

HttpServeltRequest 객체의 빈 스코프에 대해 질문 드립니다.

0

304

0

PropertyEditor non thread-safe 한 이유

0

491

1

빈의 초기화 시점이 궁금합니다.

0

393

1

이 강의 예제소스 없나요?

0

345

1

릴로딩 기능에 대해

0

404

1

Bean 을 특정 Application...Event 발생 후, 등록하는 방법이 궁금합니다

0

612

3

IoC/DI와 POJO의 관계

1

749

2

기선님 RetentionPolicy에 대해서 질문이 있습니다.

0

291

1

안녕하세요 기선님!

3

486

3

비동기적으로 실행할때

0

314

2

"Prototype/프록시"로 설정했는데 동일한 객체로 나옵니다

0

530

4

@Autowired 로 가져오는 Bean은 ?

2

280

1

Type-Safety 의미

0

538

1

Null Point

0

318

1

WebDataBinder를 특별히 쓰는 이유가 있나요?

0

384

1

안녕하세요?

0

336

2

애노테이션이 없습니다(?)

0

279

3

코드 중 변수 앞에 적는 것이 무엇인지 알고 싶습니다.

0

295

2

강의 하시면서 사용하는 resolving 이란 단어는 어떤 의미인가요?

1

1499

1

IOC컨테이너관련 질문입니다

0

245

3

인터페이스가 있는 경우 인터페이스 타입으로 주입하는 추가 질문입니다.

0

259

1