AOP_부가기능의 실행시점(advice) - @Before
·
Framework/SPRING FRAMEWORK
1. AOP 의존성 등록 org.aspectj aspectjweaver 1.9.4 2. 타겟 객체 생성 (핵심 기능 구현한 빈) 3. aspect 객체 생성 (부가 기능 구현한 빈) 가. @Aspect 어노테이션 지정 나. pointcut 지정: 어떤 핵심기능의 메서드인지 알려주는 기능 https://docs.spring.io/spring-framework/docs/5.2.25.RELEASE/spring-framework-reference/core.html#aop-pointcuts-examples Core Technologies In the preceding scenario, using @Autowired works well and provides the desired modularity, but det..
AOP
·
Framework/SPRING FRAMEWORK
AOP (Aspect Oriented Programming : 관점 지향 프로그래밍) 📌개념 어플리케이션의 기능중에서 핵심기능(로그인,회원가입,계좌이체 등) 과 부가기능(보안,트랜잭션,로깅처리,예외처리 등) 을 분리해서 개발하고자 하는 개발 방법론. 핵심기능에서 부가기능이 필요하면 주입받아서 사용한다. 📌기술 AspectJ 이름의 AOP 원천 기술이 존재 (1995년) Spring에서 AspectJ원천 기술 스킬에서 일부분의 스킬을 채택하고 Spring AOP라고 부름. 외부 라이브러리가 필요하다. 외부 라이브러리 org.aspectj aspectjweaver 1.9.4 ​ 용어 📌 주입시점 (Join Point) login 메서드 호출시 ★★★ ⇒ 부가기능이 핵심기능에 주입되는 시점은 핵심기능의 메서드..
SpEL - Collection Projection (열 선택)
·
Framework/SPRING FRAMEWORK
📌 value="#{ 컬렉션id값.![ 열 ] }" 컬렉션 목록에서 특정 값(변수)만 가져올 때 사용한다.( 문자열로 반환 ) .![ ] 을 사용한다. 1️⃣ 이름만 얻어오고 싶은 경우 ✅ Person.java - username만 저장하는 list 변수를 작성한다. - getter/setter 생성한다. ✅ user.xml value="#{id값.![변수명]}" ✅ TestMain.java 2️⃣ age lt 10인 이름만 출력
SpEL - Collection selection (행 선택)
·
Framework/SPRING FRAMEWORK
📌 SpEL용 컬렉션 참조 📌 전체목록 ✅ Person.java - List 변수를 작성한다. - getter / setter를 작성한다. ✅ user.xml - util namespace를 체크한다. - p namespace 체크한다. - cat을 여러 개 만든다. - Person 빈 등록 ✅ TestMain.java 📌 value = "#{id값[인덱스]}" value = "#{id값[인덱스]}" 📌 value = "#{id값.?[조건식]}" value = "#{id값.?[조건식]}" 조건식에는 꺾쇄가 불가하다. 📌 조건식 여러개 : and 조건식 여러개 : and 결과 💡 심볼릭 연산자의 영문 표현 lt () le (≤) ge (≥) eq (==) ne (≠) div (/) mod (%) not (..
SpEL - 리소스 번들
·
Framework/SPRING FRAMEWORK
📌 p:name = "#{번들의id값['key']}" 1. SpEL용 리소스번들 등록은 util namespace 이용해야한다. 2. properties 파일은 iso-8859-1인 기본 인코딩을 사용해야 된다. 💻 "#{ }" => 오류 발생 ✅ Cat.java - 두 개의 변수를 작성한다. - 생성자, getter/setter, toString을 작성한다. ✅ application.properties ✅ user.xml - 을 작성한다. - 알고있는 문법대로 #{ } 을 사용해보자. ✅ TestMain.java 출력해보자 결과 오류 발생 👇👇👇 ✅ user.xml SpEL용 리소스번들 등록은 util namespace을 이용해야 한다. util namespace를 이용하기 위해 util을 체크해준다...
xoo | 수진
xoo의 성장기록