2022.10.21 Spring-3

차유빈·2022년 10월 21일
0

[Annotation] init , destroy 메서드

TestBean1.java

BeanConfigClass.java

MainClass.java


[Annotation] 주입하기

JavaDI 프로젝트 생성

1. 이름을 통한 자동 주입

DataBean1 (DataBean2,3동일)

TestBean1.java

TestBean2.java

TestBean3.java

BeanConfigClass.java

MainClass.java


2. 타입을 통한 자동 주입

BeanConfigClass.java
아래 코드 추가

MainClass.java
아래 코드 추가


[Annotation] 어노테이션으로 빈 설정

AnnotationBean 프로젝트 생성

DataBean1.java (DataBean2, 3 동일)

TestBean1.java

TestBean2.java

BeanConfigClass.java

MainClass.java


[Annotation] JSR-250 어노테이션

JSR250 프로젝트 생성

*DataBean1.java (DataBean2동일)

TestBean1.java

TestBean2.java

TestBean3.java

BeanConfigClass.java

MainClass.java

Main에 obj3 아래 코드 추가


[component] 컴포넌트

Component 프로젝트 생성

beans.xml 생성(component-scan으로 beans2, beans3에 component가 붙어있는 클래스를 불러옴)

TestBean1.java (TestBean2.java 동일)

TestBean3.java

TestBean4.java

TestBean5.java

beans.xml

BeanConfigClass.java

MainClass.java

  • TestBean3, 4는 component scan으로 가져옴


[component] 컴포넌트 빈 기본 설정

TestBean1.java

TestBean2.java

TestBean3.java

TestBean4.java

TestBean5.java

BeanConfigClass.java

MainClass.java


[component] 자동주입

DataBean1.java

DataBean2.java

DataBean3.java

DataBean4.java

DataBean5.java

TestBean1.java

BeanConfigClass.java

MainClass.java


[AOP] XML 기본설정

pom.xml에 디펜던시 추가

TestBean.java

MainClass.java


[AOP] XML 적용하기

beans.xml

  • Advisor클래스 객체( advisor1)를 빈 등록
  • aop:config 로 설정 시작
  • aop:aspect 가 하나의 aop 설정으로 여러개를 설정가능
  • expression이 하나의 관심사 즉, 모든 패키지의 모든 클래스안에 있는 method1() 실행시 적용됨
  • aop:before는 method1() 실행전
  • aop:after는 method1() 실행후

AdvisorClass.java

  • ProceedingJoinPoint 객체 pjp를 이용해서 직접 method1를 호출한다.
  • 호출 전후에 코드 작성가능

MainClass.java

profile
chacha's 프로그래밍 공부

0개의 댓글