Spring 어댑터
1. 로 딩 경로 의 마스크:?(단일 문자 와 일치), * (일치 / 제외 임의의 문자), * * / (임의의 여러 디 렉 터 리 와 일치)
classpath:app-Beans.xml
설명: 마스크 가 없 으 면 완전히 일치 해 야 합 니 다.
classpath:App?-Beans.xml
설명: App1 - Beans. xml, App2 - Beans. xml 와 같은 문자 가 일치 합 니 다.
classpath:user/*/Base-Beans.xml
설명: 0 개 이상 의 문자열 과 일치 합 니 다. 예 를 들 어 user / a / Base - Beans. xml, user / b / Base - Beans. xml, 하지만 user / Base - Beans. xml 와 일치 하지 않 습 니 다.
classpath:user/**/Base-Beans.xml
설명: 경로 에 있 는 0 개 이상 의 디 렉 터 리 와 일치 합 니 다. 예 를 들 어 user / a / ab / abc / Base - Beans. xml 와 일치 하 는 동시에 user / Base - Beans. xml 도 일치 합 니 다.
classpath:**/*-Beans.xml
설명: 모든 클래스 경로 에서 파일 이름 을 '- Beans. xml' 로 끝 나 는 프로필 을 찾 고 불 러 오 는 것 을 의미 하지만 중복 되 는 파일 이름 은 하나만 불 러 옵 니 다. 불 러 오 는 순서 에 따라 결 정 됩 니 다.
classpath*:user/**/*-Beans.xml
classpath*:**/*-Beans.xml
설명: "classpath *:" 는 여러 개의 자원 파일 을 불 러 오 는 것 을 의미 합 니 다. 이름 을 바 꾸 더 라 도 불 러 옵 니 다. 예 를 들 어 app 1. jar 에 config - Beans. xml 이 있 고 app 2. jar 에 도 config - Beans. xml 이 있 습 니 다. 이 럴 때 둘 다 불 러 옵 니 다.classpath *: 여러 jar 파일 에서 같은 파일 을 불 러 올 수 있 고 불 러 올 수 있 습 니 다.
다른 (현재 가 아 닌) ClassLoader 의 경로 에 있 는 파일 입 니 다.
Spring 의 경로 분할 부 호 는 / 이지 \ \ 를 사용 할 수 없습니다. 참고:http://mushiqianmeng.blog.51cto.com/3970029/875027/
2. Spring AOP 설정 어댑터:
다음 문 서 는 Spring 중국어 개발 안내 2.5 문서 로 만강 홍 개원 조직 에서 번역 합 니 다.
Spring AOP 사용 자 는 자주 사용 할 수 있 습 니 다.
execution
접점 인디케이터.실행 식 의 형식 은 다음 과 같 습 니 다:execution(modifiers-pattern? ret-type-pattern declaring-type-pattern? name-pattern(param-pattern)
throws-pattern?)
반환 형식 모드 (위 코드 세 션 의 ret - type - pattern) 를 제외 하고 이름 모드 와 매개 변수 모드 를 제외 하고 모든 부분 을 선택 할 수 있 습 니 다.반환 형식 모드 는 방법의 반환 유형 을 결정 합 니 다. 연결 점 과 순서대로 일치 해 야 합 니 다.사용 하 실 거 예요.
가장 빈번 한 반환 유형 모드 는
*
로 임의의 반환 유형 과 일치 하 는 것 을 대표 합 니 다.한 정 된 형식 이름 은 주어진 형식 으로 돌아 가 는 방법 과 만 일치 합 니 다.이름 모드 가 일치 하 는 것 은 방법 명 입 니 다.모든 또는 부분 이름 모드 로
*
어댑터 를 사용 할 수 있 습 니 다.매개 변수 모드 가 약간 복잡 합 니 다.()
매개 변 수 를 받 아들 이지 않 는 방법 과 일치 하 며, (..)
임의의 매개 변 수 를 받 아들 이 는 방법 (0 이상) 과 일치 합 니 다.모드 (*)
는 모든 종류의 인 자 를 받 아들 이 는 방법 과 일치 합 니 다.모드 (*,String)
는 두 개의 인 자 를 받 아들 이 는 방법 과 일치 합 니 다. 첫 번 째 는 임의의 유형 일 수 있 고 두 번 째 는 String 형식 이 어야 합 니 다.더 많은 정 보 는 AspectJ 프로 그래 밍 안내 서 를 참조 하 십시오. 언어 어의의 부분.다음은 일반적인 절 입 점 표현 식 의 예 를 보 여 줍 니 다.
임의의 공공 방법의 집행:
execution(public * *(..))
"set" 로 시작 하 는 모든 이름 의 실행:
execution(* set*(..))
AccountService
인터페이스 가 정의 하 는 임의의 방법의 집행:execution(* com.xyz.service.AccountService.*(..))
서비스 패키지 에서 정의 하 는 임의의 방법의 실행:
execution(* com.xyz.service.*.*(..))
서비스 패키지 나 하위 패키지 에서 정의 하 는 임의의 방법의 실행:
execution(* com.xyz.service..*.*(..))
service 패키지 의 임의의 연결 점 (Spring AOP 에 서 는 방법 만 실 행 됩 니 다):
within(com.xyz.service.*)
service 패키지 나 하위 패키지 의 임의의 연결 점 (Spring AOP 에 서 는 방법 만 실 행 됩 니 다):
within(com.xyz.service..*)
실현
AccountService
인터페이스의 프 록 시 대상 의 임 의 연결 점 (Spring AOP 에서 방법 만 실 행 됩 니 다):this(com.xyz.service.AccountService)
'this' 는 바 인 딩 폼 에서 더욱 자주 사용 합 니 다. - 다음 알림 1 절 을 참조 하여 대리 대상 이 알림 체 내 에서 사용 할 수 있 는 방법 을 알 아 보 세 요.
이루어지다
AccountService
인터페이스의 대상 의 임 의 연결 점 (Spring AOP 에서 방법 만 수행):target(com.xyz.service.AccountService)
'target' 은 바 인 딩 폼 에서 더욱 자주 사용 합 니 다. - 다음 알림 1 절 을 참조 하여 목표 대상 이 알림 체 내 에서 사용 할 수 있 는 방법 을 알 아 보 세 요.
매개 변수 하나만 받 아들 이 고 실행 할 때 들 어 오 는 매개 변 수 는?
Serializable
인터페이스의 연결 점 (Spring AOP 에 서 는 방법 만 실 행 됩 니 다)args(java.io.Serializable)
'args' 는 바 인 딩 폼 에서 더욱 자주 사용 합 니 다. - 뒤의 알림 1 절 을 참조 하여 방법 적 인 파 라 메 터 를 알림 체 내 에서 사용 할 수 있 는 방법 을 알 아 보 세 요.
예 에서 제시 한 착안점 이 다르다 는 것 을 주의 하 세 요.
execution(* *(java.io.Serializable))
: args 버 전 은 동적 으로 실 행 될 때 만 매개 변수 가 Serializable 일 때 만 일치 합 니 다. execution 버 전 은 방법 서명 에서 하나만 설명 합 니 다. Serializable
유형의 매개 변 수 는 일치 합 니 다.대상 중 하나
@Transactional
주해 의 임의의 연결 점 (Spring AOP 에 서 는 방법 만 실 행 됩 니 다)@target(org.springframework.transaction.annotation.Transactional)
'@ target' 은 바 인 딩 폼 에서 더욱 자주 사용 합 니 다. - 다음 알림 1 절 을 참조 하여 주해 대상 이 알림 체 내 에서 사용 할 수 있 는 방법 을 알 아 보 세 요.
대상 성명 의 유형 은 하나 입 니 다.
@Transactional
주해 의 연결 점 (Spring AOP 에서 방법 만 실행):@within(org.springframework.transaction.annotation.Transactional)
'@ within' 은 바 인 딩 폼 에서 더욱 자주 사용 합 니 다. - 다음 알림 1 절 을 참조 하여 주해 대상 이 알림 체 내 에서 사용 할 수 있 는 방법 을 알 아 보 세 요.
어떤 집행 방법 이 든 하나 있어 요.
@Transactional
주해 의 연결 점 (Spring AOP 에 서 는 방법 만 실 행 됩 니 다)@annotation(org.springframework.transaction.annotation.Transactional)
'@ annotation' 은 바 인 딩 폼 에서 더욱 자주 사용 합 니 다. - 다음 알림 1 절 을 참조 하여 주해 대상 이 알림 체 내 에서 사용 할 수 있 는 방법 을 알 아 보 세 요.
하나의 인자 만 받 아들 이 고 실행 할 때 들 어 오 는 매개 변수 형식 은
@Classified
주해 의 연결 점 (Spring AOP 에 서 는 방법 만 실 행 됩 니 다)@args(com.xyz.security.Classified)
'@ args' 는 바 인 딩 폼 에서 더욱 자주 사용 합 니 다. - 다음 알림 1 절 을 참조 하여 주해 대상 이 알림 체 내 에서 사용 할 수 있 는 방법 을 알 아 보 세 요.
어떤
tradeService
'의 Spring bean 위의 연결 점 (Spring AOP 에 서 는 방법 만 실 행 됩 니 다):bean(tradeService)
이름 에 일치 하 는 마스크 표현 식
*Service
'의 Spring bean 위의 연결 점 (Spring AOP 에 서 는 방법 만 실 행 됩 니 다):bean(*Service)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.