본문 바로가기
Backend - Java Spring/Spirng Boot-JPA 활용

[SpringBoot와 JPA] 시작

by VictorMeredith 2024. 2. 21.

- spring.io 의 가이드 잘 활용하자.

1. MVC

- thymeleaf

- template/{viewName}.html 

- modal.addAttribute("data", data);

data 자리에 렌더링

- 라이브러리 중에 devtools 가 있음 이거 넣고 바꾼 뷰 파일만 리컴파일하면 됨

- 근데 난 안됨

 

2. 요구사항 분석

- 회원 기능 / 상품 기능 / 주문 기능

- 회원기능 : 등록과 조회

- 상품기능 : 등록 수정 조회

- 주문기능 : 주문 내역조회 취소

- 기타요구사항 : 상품의 재고 관리가 필요하다. 상품의 종류/카테고리로 구분이 가능하다.

 

3. 모델링

도메인 모델과 테이블 설계

- 와 개 신세계다

- dbdiagram 개 좋다

- 장점 : 코드로 Entity 분석과 ERD 까지 한번에 그릴 수 있다. MYSQL 에서 그냥 끌어와서 ERD를 생성할 수 있다.

- 단점 : 코드 배워야하는데 어렵진 않음. 10개까지만 무료. 유료다. 8달러.. 

- 엔터프라이즈급 DB 설계할거면 draw.io 나 gitMind 같은 GUI보다 진짜 빠르게 할 수 있을 듯 하다. 코드로 보니 에러도 적고

 

1) 사용법

https://dbdiagram.io/

 

dbdiagram.io - Database Relationship Diagrams Design Tool

 

dbdiagram.io

- 문법

- Table 스키마.table as Entity { (as Entity는 생략해도 된다)

columnName type [ref : > Entity.id] (이러면 entity의 관계도 볼 수 있고, 테이블의 fk pk 관계도 볼 수 있다.)

}

- > : 일대다

- < : 다대일

- <> : 다대다

- - : 일대일

생각보다 이쁘고 잘나옴. 드래그로 옮길 수도 있고, 색깔도 바꿀 수 있다

- DB 기준 타입의 ERD 스타일은 못따라하겠다 도메인 다이어그램부터 그려봐야겠따

- 코드로 적으니까 빠르다.

- 근데 여기에 8달러는 조금 부담스럽다

- 어쨌든 연습은 해보자

도메인 모델

- ERD 그려보자

ERD

 

- items 는 싱글테이블. 성능이 잘나온다. 한 테이블에 다 때려박음. d_type을 두고 쓰는거임 

- category_item : 매핑 테이블-> RDBMS에서 다대다 관계를 표현하는 매핑테이블

 

 

 

JPA 기초 해야되니까 잠깐 정지! 다시 돌아와야함

댓글