Spring (4) 썸네일형 리스트형 [Spring]Lambda 표현식 1. Lambda 표현식 파라미터와 몸체로 구분 파라미터와 몸체 사이에 '->' 구분을 추가 함수몸체가 단일 실행문이면 괄호{} 생략 가능 함수몸체가 return문으로만 구성되어 있는 경우 괄호{} 생략가능 (파라미터) -> {몸체} 1-1. 익명함수를 람다식으로 변경하기 기존방법↓ new Thread(new Runnable(){ @Override public void run(){ System.out.println("Thread"); } }).start(); 람다식↓ new Thread(() -> { System.out.println("Thread"); }).start(); 람다 함수를 매개변수로 넘기기 위해서는 메소드의 매개변수가 @FunctionalInterface로 선언된 인터페이스여야 가능 @Fu.. 221128_Spring_AOP2 AOP AOP 주요 디자인 패턴 : Proxy 디자인 패턴 AOP advice종류 1. Before : 메소드 실행 전 Advice실행 2. After : 메서드 실행 후 Advice실행 3. After-returning : 메서드가 성공 후 (예외없이) Advice실행 4. After-throwing : 메서드가 예외발생 후 Advice 실행 5. Around : 메소드 실행 전과 후 Advice실행(Before + Afeter) AOP Pointcut표현식 1. execution : 리턴 타임, 패키지 경로, 클래스명, 메서드명(매개변수) 2. within : 타입 패턴 내에 해당하는 모것들을 포인트 컷 3. bean : bean 이름으로 포인트컷 aop_3패키지에 Person.java 인터페이스 생.. 221125_Spring_국비_암호화/AOP 동일한 타입을 가진 bean 객체가 2개가 있을때 : 스프링을 초기화하는 과정에서 Exception을 발생시킴 → @Autowired의 injection의 대상이 1개여야하는데 2개이상의 빈이 존재해 주입할 때 사용할 객체를 선택 불가 해결 : @Qualifier 사용 → 사용할 의존객체를 선택할 수 있게 해줌 @Autowired적용한곳에 @Qualifier를 적용해주고 주입 할 id값을 (name="")로 적용시킴 @Autowired 적용시 의존 객체 찾는 순서 동일 타입의 bean객체 검색 → 1개면 bean객체 사용 타입이 같은 bean객체가 두개 이상이면서 @Qualifier이 없는 경우 → 이름이 같은 빈 객체 검색 타입이 같은 bean객체가 두개 이상이면 @Qualifier로 지정한 bean객.. 221124_Spring_국비_DI/DesignPattern/@Resource/@Autowired/@Inject DI(Dependency Injection) 의존 관계 주입 어떤 객체가 사용하는 의존 객체를 직접 만들어 사용하는게 아닌 주입받아 사용하는 방법 장점 - 객체 간 결합도를 낮춤 - 유연한 코드 작성 가능 - 가독성 증진 - 코드 중복 방지 - 유지 보수 용이 방식 - Filed Injection(필드 주입) 단점 : SRP(단일 책임 원칙)을 해칠 가능성 높음 의존성이 숨음 DI Contrainer에 의존성을 가지게 됨 불변성을 활용 불가능(final을 선언할 수 없음) - Setter Injection(수정자 주입) - Contructor Injection(생성자 주입), 권장 권장 이유 : NullPointException 발생을 막음 불변성 활용 가능(final로 선언가능) SRP(단일 책임 원칙.. 이전 1 다음