TIL

TIL - 2024/09/26

기석김 2024. 9. 27. 22:31

의존성이란?

의존성은 하나의 객체가 다른 객체의 기능이나 데이터에 의존하는 관계를 의미

예를 들어, 'A' 클래스가 'B' 클래스의 메소드를 사용한다면, 'A'는 'B'에 의존하는 관계가 된다

 

의존성 주입 방식은 세 가지

 

1. 생성자 주입

@Controller
public class UserController {

    private final UserService userService;

    public UserController(UserService userService) {
        this.userService = userService;
    }

    // 컨트롤러 메서드들
}

 

2. 생성자 주입 (Lombok 사용)

 

@Controller
@RequiredArgsConstructor
public class UserController {

    private final UserService userService;

}

 

3. 필드 주입

 

@Controller
public class UserController {

    @Autowired
    private UserService userService;

    // 컨트롤러 메서드들
}

 

JPA(Java Persistence API)는 자바 어플리케이션에서 관계형 데이터베이스를 사용하기 위한 표준 ORM 기술이다.

 

JPA 사용 이유? 생산성 향상, 유지보수 용이, 객체 지향 프로그래밍과의 호환, db 독립성과 이식성

 

간단한 CRUD 작업

 

저장 및 업데이트 (Save and Update)

 

save(S entity): 주어진 엔티티를 저장,엔티티가 새로운 경우에는 생성하고, 이미 존재하는 경우에는 업데이트

 

조회 (Read)

 

findById(ID id): 주어진 ID에 해당하는 엔티티를 찾는다.  결과는 Optional로 반환
findAll(): 모든 엔티티를 조회
findAll(Sort sort): 정렬 기준에 따라 모든 엔티티를 조회
findAllById(Iterable<ID> ids): 주어진 ID 목록에 해당하는 엔티티들을 조회

 

삭제 (Delete)

 

delete(T entity): 주어진 엔티티를 삭제
deleteAll(Iterable<? extends T> entities): 주어진 엔티티 컬렉션을 삭제
deleteById(ID id): 주어진 ID를 가진 엔티티를 삭제
deleteAll(): 모든 엔티티를 삭제

 

카운트 및 존재 여부 확인

 

count(): 엔티티의 전체 개수를 반환
existsById(ID id): 주어진 ID를 가진 엔티티의 존재 여부를 확인

 

-----------------------------------------------------------------------------------------------

 

요즘 책을 읽고 꾸준히 읽고 있다. 

세이노의 가르침이라는 책을 읽고 있는데 매우 괜찮은 거 같다.

가격이 매우 저렴하길래 샀는데 매우 유명한 책이다.