스파르타코딩클럽
웹개발의 봄, Spring - 2주차 강의'
- RDBMS, 줄여서 RDB는 관계형 데이터베이스
- H2는 RDBMS의 한 종류로, 서버가 켜져있는 동안에만 작동하는 RDB
↳ In-memory DB, 서버가 작동하는 동안에만 내용을 저장하고, 서버가 작동을 멈추면 데이터가 모두 삭제
JPA, Repository
- 서버 중 JPA(Spring Data JPA)는 스프링을 위해 태어남.
- Java로 코드를 작성하면 SQL로 번역해줄 뿐만 아니라, 기본적인 기능이 거의 완벽하게 들어있음.
- Repository는 JPA를 작동시키는 매개체
API, Lombok, DTO
- 스프링은 데이터를 주고받는 방법을 강제
- DTO (Data Transfer Object)
: 데이터를 주고 받을 때는 새로 클래스를 만들어서 하자! 기존 db와 연결된 클래스 사용X = DTO를 완충재로 활용함.
- 현업에서는 데이터를 주고받을 때, DTO를 반드시 이용
- Lombok:
자바 메소드/생성자들을 자동생성해줌으로써 코드를 절약할 수 있도록 도와주는 라이브러리
위의 것들을 배운다.
Spring Data JPA
- 명령을 내린 Java 명령어를 SQL로 번역해주는 녀석
- JPA : SQL을 쓰지 않고 데이터를 생성, 조회, 수정, 삭제할 수 있도록 해주는 번역기
@Bean
public CommandLineRunner demo(CourseRepository repository) {
return (args) -> {
};
}
Interface
- JPA는 Repository를 통해서만 사용할 수 있음
- 인터페이스는 클래스에서 멤버가 빠진, 메소드 모음집
스프링의 구조
1) Controller
: 가장 바깥 부분, 요청/응답을 처리함(자동 응답기).
→ 2주차 후반부에 배울 녀석
2) Service
: 중간 부분, 실제 중요한 작동이 많이 일어나는 부분
→ 지금 배울 녀석
3) Repo
: 가장 안쪽 부분, DB와 맞닿아 있음.
→ 여태 배운 녀석 (Repository, Entity)