AOP(Aspect Oriented 프로그래밍): AOP의 전문 용어는 "Aspect Oriented 프로그래밍"입니다. 제가 이해하는 바는 소스 코드를 수정하지 않고 기능을 향상시키는 것입니다.
1. AOP 주석 환경 구축(다음 패키지 가져오기)
2. 구현
환경 설정이 완료되면 프로젝트를 생성합니다.
1. 인터페이스 클래스(CustomerDao)를 생성하고 메소드 2개 추가
2. 인터페이스 클래스가 생성된 후에는 새로운 구현 클래스(CustomerDaoImpl)를 생성하고 인터페이스에 메소드를 구현하는 것이 당연합니다
3. 위의 기본 작업을 완료한 후 springIOC의 아이디어를 활용하고 customerDaoImpl 클래스를 스프링 관리에 넘겨야 합니다
src 디렉토리에 applicationContext.xml이라는 xml 파일을 생성합니다
Bean은 스프링의 태그 쌍, 작은 항목으로 이해할 수 있습니다. id는 선택한 이름이지만 일반적으로 클래스 이름이고 첫 글자는 소문자입니다. 클래스에 추가되는 것은 클래스의 전체 경로입니다
자동 주석/에이전트 켜기: 자동이 켜져 있는 경우에만 에이전트 다음에 작성하는 주석에는 실제 응용 프로그램이 있습니다
4. 환경과 기본 클래스가 작성되었으며, 구현을 위해 데모 클래스를 생성할 수 있습니다
먼저 스프링 컨테이너에 존재하는 CustomerDaoImpl 클래스를 꺼내야 합니다
'1'과 '2' 코드가 이를 수행합니다.
이름에서 알 수 있듯이 어디서 가져올지 알려줘야 하므로 경로를 지정해야 합니다
"2"는 종속성 주입이라고 하는 주석 방법입니다. 오래 전에 작성된 클래스를 xml 파일에 삽입합니다. customerDao 필드에서 @Resource의 이름은 이전 bean의 id 값을 참조합니다
다음 단계는 테스트('3''4' 코드 추가 필요), run1() 작성 및 @Test 추가입니다. 메소드 이름을 선택한 후 마우스 오른쪽 버튼을 클릭하고 Run on junit을 선택하면 매우 편리한 단위 테스트입니다.
이전 준비에서 run1 메소드를 실행한 후 구현 클래스에 두 줄의 출력이 표시됩니다.
III. AOP 측면 클래스
1. 측면 클래스 MyAspectAnno.java를 생성합니다. 설정 파일에 빈을 추가하고 계속해서 스프링 관리에 넘깁니다)
2. 개선이 필요한 기능적 메소드 추가
값에 있는 코드는 표현식이고, public 뒤의 *는 다음을 참조합니다. 모든 유형의 반환 값. , save()는 기능을 향상하거나 추가할 위치를 나타냅니다. 이 코드가 작성된 후에는 save()가 실행된 후 @After 주석 아래의 메소드가 실행된다는 의미입니다. ).이것이 개선입니다
그런데 알림(서라운드 알림, 사전 알림 등)을 더 많이 작성하게 되면 매번 표현식 코드를 추가해야 하고, 복사해서 붙여넣는 것도 매우 귀찮은 일입니다.
앞으로는 이 작업만 수행하면 되며 주변 알림이 아래에 추가됩니다.
값은 더 이상 긴 표현식이 아닙니다. 향후 유지 관리에 편리합니다
위 그림은 매우 명확합니다. Aop 아이디어를 사용하고 주석을 사용하여 기능 향상을 성공적으로 구현했음을 보여줍니다(우리가 추가한 알림은 진입점(save()) 이후 및 그 주변에서 실행됩니다)
위 내용은 Spring AOP의 Annotation 방법 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!