AOP는 정말 다양한 횡단 관심사(Cross-Cutting Concerns) 처리에 활용될 수 있어요. 우리가 흔히 떠올리는 로깅 외에도, 성능 측정, 트랜잭션, 보안, 감사(Audit), 캐싱, 리트라이, 데이터 암호화/복호화까지도 다뤄요. 💥✅ Spring AOP를 활용할 수 있는 대표적인 시나리오들1. 메서드 실행 시간 측정 (Performance Monitoring)특정 메서드들의 성능 병목 측정슬로우 쿼리 잡기@LogExecutionTime 커스텀 어노테이션과 함께 자주 씀2. 트랜잭션 관리 (@Transactional은 AOP 기반)선언적 트랜잭션 처리메서드 진입 시 트랜잭션 시작 → 정상 반환 시 커밋, 예외 발생 시 롤백java복사편집@Transactional public void sav..
들어가며개발을 하고 나서 납품일정이 되면 자연스럽게 활용하던 DB가 아닌 새롭게 세팅된DB로 깔끔하게 밀어서 준다.이때 여러가지 정보들을 미리 등록해야하는 경우가 있는데 필자는 SQL로 간단하게만들어서 넣어주고 있었는데 문득 더 쉽게하는 방법은 없을까?(절때 DDL 쿼리 작성해서 귀찮은건 아님 .ㅋ.)해서 찾아본걸 정리해본다..SQL 파일로 하기그냥 일반적으로 파일 저장해두는 resources 아래나 루트 경로 쪽에sql파일에 쿼리 짜서 넣어준다쉽긴한데 문제가 만약 기존 데이터가 있는 경우 아주 가끔 (사실 한번) 모든 데이터를지워버리는 경우가 생겨서 만약 기존 데이터는 유지시키면서 설정한 데이터를 넣어줄 때는신경써서 관계도를 보며 해야한다.@PostConstruct 사용 방법 @PostConstruct..
Custom Exception을 만드는건 까다롭고 귀찮지만 도움이 됩니다.전체 범위에서 처리할 BAD Request 사항을 처리하기 위해서는 상당히 많은 코드가 필요한데요 예로 들어온 값을 검증하여 (Validation) 처리하는 부분에서나내부 비지니스로직을 타다 발생되는 예외를 처리하기 위해컨트롤러에서 많게는 10개이상씩 예외처리문을 처리하고 이를 중복해서 사용하는 경우가 많다보니코드의 가독성과 코드 수 자체도 많아져 방법을 찾게 되었습니다. 이번에는 Enum을 대상으로 처리해볼건데저는 일반적으로 Enum을 DB에 들어갈 데이터중 값이 포맷에 맞아야하는경우를대상으로 주로 활용하고 있습니다.Enum을 선언public enum EventLevelEnum { danger , attention, ..
출처 https://taes-k.github.io/2020/02/16/servlet-container-spring-container/스프링 컨테이너가 동작하는 컨텍스트컨텍스트? 애플리케이션 실행 환경이나 특정 동작과 관련된 상태 정보 톰캣과 스프링 컨테이너가 동작하는 방법 Apache Tomcat (톰캣)1. 개념Apache Tomcat(톰캣)은 Java 기반의 **웹 애플리케이션 서버(Web Application Server, WAS)**로, Java 애플리케이션을 실행하고 HTTP 프로토콜을 통해 클라이언트 요청을 처리합니다. 스프링 프레임워크(Spring Framework)를 사용하여 개발된 애플리케이션은 톰캣과 같은 WAS 위에서 실행되므로, 톰캣은 스프링 애플리케이션을 이해하기 위한 중요한..
1. PrePersist의 약어와 한글 번역약어:PrePersist를 풀어보면 다음과 같이 해석할 수 있습니다:Pre: "이전에" (Before)Persist: "영속화" 또는 "저장" (Persist)따라서 PrePersist는 저장되기 이전에 실행이라는 의미를 가지고 있습니다.한글 번역:@PrePersist를 한글로 번역하면 **"저장되기 직전에"**라는 의미입니다.이 어노테이션은 엔티티 객체가 데이터베이스에 **영속적으로 저장(persist)**되기 직전에 특정 로직을 실행한다는 것을 의미합니다.예를 들어 설명하자면@PrePersist는 저장 직전에 실행되는 메서드를 지정하기 위해 사용되므로, 엔티티가 처음 데이터베이스에 저장되기 전에 수행해야 하는 작업을 설정할 때 활용됩니다.2.@PrePersi..
기본적인 Spring 이해를 가지고 있다는 가정으로 시작하겠습니다. 자바 17 , 스프링부트 3.4.0 버전에서 합니다. 알고 있기로 Spring Doc이 2.4인가 이후 부터 지원하기 때문에 아래 버전을 사용하시는 분은 다른 글을참고하시길 바립니다. 1. 테스트용 컨트롤러를 하나 만들어줍니다. 2. 의존성은 다음과 같이 해서 추가하면됩니다. 아래 그루비와 Spring DOC 추가하기 3. application.properties 파일에 추가로 패치 경로를 삽입합니다 4. 아까 만들어둔곳에 이런식으로 테크와 오퍼레이션을 추가해줍니다. 5. 실행해주면 다음처럼 나옵니다. 이러면 성공!
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.