전체 작동 구조

bird.j·2021년 3월 21일
0

SpringBoot

목록 보기
7/22

  • RDBMS(RDB) : 관계형 데이터베이스. 정보 저장소. 매우 고도화된 엑셀. --ex. MySQL, Oracle

  • MySQL => AWS의 RDS 서비스를 이용해 붙인다.

  • H2 : 인메모리DB. 서버가 작동하는 동안에만 내용을 저장하고 서버가 작동을 멈추면 데이터가 모두 삭제된다. 연습용으로 좋음!

    • src>main>resources>application.properties에 H2웹 콘솔 설정 붙여넣기
      spring.h2.console.enabled=true spring.datasource.url=jdbc:h2:mem:testdb
      ->Application실행하기
    • localhost:8080/h2-console>connect 클릭>웹콘솔에서 SQL사용 가능
  • SQL : 데이터를 읽고, 저장하고, 변경하고, 삭제하는 문법

  • JPA : java로 코드를 작성하면 SQL로 번역해준다. (스프링은 자바로 작동하고 데이터베이스는 SQL로 작동하는데 이 둘 사이의 자바를 위한 번역기)

  • Repository : JPA를 작동시키는 매개체 =SQL.

  • Domain(Entity) : =DB의 테이블. ID, column 존재. @Entity는 테이블임을 나타낸다.

  • Timestamped : DB의 기본은 생성일자와 수정일자를 필드로 가지는 것.

  • API : 클라이언트와 서버간의 데이터를 주고받는 약속. 클라이언트가 request보내면 서버가 response반환.

  • REST : 요청방식-동사(POST생성, GET조회, PUT수정, DELETE삭제), 주소-명사 --ex)GET/courses

    • Restcontroller의 rest와는 다르다!!
  • Lombok : 자바 프로젝트를 진행하는데 거의 필수적으로 필요한 메소드, 생성자 등을 자동 생성해줌으로써 코드 절약 가능하게 하는 라이브러리
    • Ctrl+Alt+s>compiler>annotation processor>enable annotation processing에 체크
    • shift 2번>actions>plugins>marketplace>lombok검색 후 install
  • DTO : 데이터를 주고받을 때 반드시 이용. 계층 간 소통
    데이터 주고 받을 때 기존 클래스 사용하지 말고 새로 클래스 만들어서 하자. 변경할 데이터를 가지고 다니는 매개체
    DB내용 막 건드리면 안되니까.
  • ARC : API만들고 실제로 동작 하는 지 확인하는 방법. 테스트 코드 작성하기 or ARC툴로 테스트 및 기능 확인

💡 JPA

CRUD : create, read, update, delete. 정보 관리의 기본 기능

  • create => repository.save()
  • read => repository.findAll()

💡 스프링의 구조

  1. Controller : 가장 바깥 부분, 요청과 응답 처리
  2. Service : 중간 부분. 실제 중요한 작동이 많이 일어난다.
  3. Repository : 가장 안쪽 부분. DB와 맞닿아 있다.

Controller

  • @RestController
  • @GetMapping
  • @PostMapping
  • @PutMapping
  • @DeleteMapping

Service

비즈니스 로직 수행

Repository

JPA를 작동시키는 매개체. JPA는 Repository를 통해서만 사용할 수 있다. interface
interface란? 클래스에서 멤버가 빠진 메소드 모음집.

0개의 댓글