[오류 처리 개선] - ApiException 및 ApiResponseCode 추가, GlobalExceptionHandler에서 ApiException 처리 로직 구현, README에 오류 등록 및 사용 방법 문서화
This commit is contained in:
27
README.md
27
README.md
@@ -78,3 +78,30 @@ public class MemberServiceImpl {
|
||||
- **클래스 레벨**: `@Transactional(readOnly = true)` 기본 설정
|
||||
- **메서드별**: 데이터 수정 시에만 `@Transactional` 개별 적용
|
||||
- **설정**: `spring.jpa.open-in-view=false` (성능 최적화)
|
||||
|
||||
### 4. 오류 등록 및 사용
|
||||
|
||||
#### 오류 코드 등록
|
||||
|
||||
```java
|
||||
// ApiResponseCode.java
|
||||
public enum ApiResponseCode {
|
||||
USER_ID_DUPLICATE("400", "이미 존재하는 사용자 ID입니다."),
|
||||
}
|
||||
```
|
||||
|
||||
#### 오류 사용 방법
|
||||
|
||||
```java
|
||||
// Service에서 예외 발생
|
||||
throw new ApiException(ApiResponseCode.USER_ID_DUPLICATE);
|
||||
|
||||
// Controller에서 예외 처리 (자동)
|
||||
// GlobalExceptionHandler가 ApiException을 잡아서 응답 변환
|
||||
```
|
||||
|
||||
#### 핵심 규칙
|
||||
|
||||
- **오류 코드**: `ApiResponseCode` enum에 모든 오류 정의
|
||||
- **예외 클래스**: `ApiException`으로 비즈니스 로직 예외 처리
|
||||
- **자동 처리**: `GlobalExceptionHandler`가 일관된 응답 형태로 변환
|
||||
|
Reference in New Issue
Block a user