[Java spring]week02

Dayeon Kim·2021년 7월 13일
0

RDBMS, H2, SQL

  • RDBMS(Relational DataBase Management System) : 컴퓨터에 정보를 저장하고 관리하는 기술입니다.

  • 쇼핑몰이라면 주문 정보, 고객 정보 등을 컴퓨터에 저장해야 할텐데, 이걸 도와줍니다.

  • H2 : RDBMS의 한 종류로 In-memory DB의 대표 주자, 서버가 켜져있는 동안에만 작동하는 RDB입니다.

    • In-memory DB : 서버가 작동하는 동안에만 내용을 저장하고, 서버가 작동을 멈추면 데이터가 모두 삭제되는 데이터베이스를 말합니다.
  • SQL : 데이터를 읽고, 저장하고, 변경하고, 삭제하는 구체적인 문법입니다.

JPA, Repository, Domain

  • JPA(Spring Data JPA) : SQL을 쓰지 않고 데이터를 생성, 조회, 수정, 삭제할 수 있도록 해주는 번역기입니다.

  • JPA는 Repository를 통해서만 사용할 수 있습니다.

  • "테이블"은 Domain, "SQL"은 Repository 입니다.

  • Interface : 클래스에서 멤버가 빠진, 메소드 모음집

API, Lombok, DTO

  • API : 클라이언트 - 서버 간의 약속입니다.

    클라이언트가 정한대로 서버에게 요청(Request)을 보내면,
    서버가 요구사항을 처리하여 응답(Response)을 반환합니다.

  • API 요청 방식 : 생성, 조회, 수정, 삭제

    • REST : 주소에 명사, 요청 방식에 동사를 사용함으로써 의도를 명확히 드러냄을 의미합니다.
    • 여기에 쓰이는 동사는 우리가 JPA 시간에 배운 CRUD를 지칭합니다.
    • 즉 A에 대해 생성(POST)/조회(GET)/수정(PUT)/삭제(DELETE) 요청을 하는 것이죠.
  • 현업에서는 데이터를 주고받을 때, DTO를 반드시 이용합니다.

    테이블을 막 건드려도 될까?
    = read, update할 때 Course 클래스를 막 써도 될까?
    = 내가 아닌 다른 사람이 변경이라도 한다면?? 😱
    완충재로 활용하는 것이
    DTO(Data Transfer Object)입니다.

  • Lombok : 자바 프로젝트를 진행하는데 거의 필수적으로 필요한 메소드/생성자 등을 자동생성해줌으로써 코드를 절약할 수 있도록 도와주는 라이브러리입니다.

CRUD

CRUD란? 정보관리의 기본 기능
→ 생성 (Create)
→ 조회 (Read)
→ 변경 (Update)
→ 삭제 (Delete)


Spring 구조

  1. Controller : 가장 바깥 부분, 요청/응답을 처리함.

  2. Service : 중간 부분, 실제 중요한 작동이 많이 일어나는 부분

  3. Repo : 가장 안쪽 부분, DB와 맞닿아 있음. →(Repository, Entity)

0개의 댓글