Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

hy6

Entity란? + 리포지터리, DI 그 외 본문

점프 투 스프링 부트

Entity란? + 리포지터리, DI 그 외

rantinum 2023. 10. 10. 09:12

엔티티(Entity)

- 정의: 데이터베이스 테이블과 매핑되는 자바 클래스. "모델" 또는 "도메인 모델" 이라 부르기도 한다.

리포지터리(Repository)

- 정의: 엔티티에 의해서 생성된 DB 테이블에 접근하는 메서드들을 사용하기 위한 인터페이스.

- 데이터 처리를 위해서는 CRUD(테이블에 어떤 값을 넣거나 값을 조회 하는 행위)가 필요한데, CRUD를 어떻게 처리할지 정의하는 계층이 리포지터리 이다.

DI(Dependency Injection)

- 스프링이 객체를 대신 생성하여 주입한다.

@Autowired

- 정의: 객체를 주입하기 위해 사용하는 스프링의 애너테이션

- 객체를 주입하는 방식에는 @Autowired 외에 Setter 또는 생성자를 사용하는 방식이 있다. 대부분 순환참조의 문제로 @Autowired보다는 Setter이나 생성자를 많이 사용한다. 허나 테스트 코드의 경우에는 객체를 참조 할 수 없으므로 텍스트 코드 작성시에만 @Autowired를 사용한다.

@Test 애너테이션

- 역할: 해당 매서드가 테스트 매서드임을 나타냄.

JUnit

- 정의 : 테스트 코드를 작성하고 실행하기 위한 자바의 테스트 프레임워크.