728x90
반응형
SMALL
학습내용
- 의존성 주입방법
- Service 네이밍 규칙
- MapStruct 실습
학습 정리
1. 의존성 주입방법
Field Injection
# 필드에 직접 의존성 주입하는 방식으로 @Autowired 사용 @Service public class UserService { @Autowired private UserRepository userRepository; }
Constructor Injectin
# 생성자를 통해 의존성을 주입하는 방법 SpringBoot에서는 @Autowired 없어도 자동으로 주입 # 대부분 해당 방식으로 의존성 주입 @Service public class UserService { private final UserRepository userRepository; public UserService(UserRepository userRepository){ this.userRepository = userRepository; } }
Setter Injection
# Setter를 이용하여 주입, 안정성이 떨어짐 @Service public class UserService { private UserRepository userRepository; @Autowired public void setUserRepository(UserRepository userRepository) { this.userRepository = userRepository; } }
2. Service 네이밍 규칙
get vs find
get은 데이터를 반드시 반환하는 경우 사용public User getUserById(Long id) { return userRepository.findById(id) .orElseThrow(() -> new EntityNotFoundException("User not found")); }
find는 데이터가 존재하지 않을 수 있는 경우 사용 / 주로 Optional 반환
public Optional<User> findUserByEmail(String email) { return userRepository.findByEmail(email); }
3. MapStruct
728x90
반응형
LIST
'TIL' 카테고리의 다른 글
2_2.엔티티 심화, 지연 로딩과 즉시로딩, N+1 문제 (0) | 2025.01.09 |
---|---|
2_1.DB 설계 기본 개념 및 연관관계 매핑 (0) | 2025.01.09 |
1_4.JPA Entity 설계와 DB 형상관리 (0) | 2025.01.09 |
1_3.RESTful API 설계와 데이터 검증, Lombok 심화 (0) | 2025.01.09 |
1_2.Spring MVC와 Controller 설계, 공통 에러 (0) | 2025.01.09 |