-
[SpringBoot] SpringBoot 되새기기 프로젝트 2일차 (2020/05/12)Server/SpringBoot 2020. 5. 12. 23:37
- 롬복 테스트
- dto -> 모든 응답을 정리하는 패키지
- param -> API 테스트할 떄 사용될 요청 파라미터 설정
- String만 허용
- jsonPath -> JSON 응답값을 필드별로 검증할 수 있는 메소드
- $를 기준으로 필드명을 명시
- $.name $.amount 이런식*/JPA
-> 자바 표준 ORM(Object Relational Mapping)* iBatis, MyBatis는 ORM이 아니라 SQL Mapper, ORM은 객체를 매핑,
* SQL Mapper는 쿼리를 매핑
RDBMS가 웹 서비스의 중심이 되면서 모든 코드의 SQL 중심화
-> 애플리케이션 코드보다 SQL이 많아짐
가장 큰 문제는 RDBMS와 객체지향 언어의 패러다임 불일치
객체지향 언어? 기능과 속성을 한 곳에서 관리
RDBMS? 어떻게 데이터를 저장할지 초점
JPA는 점점 데이터 베이스 모델링에 집중하게된 웹 애플리케이션 개발을 해결 위해 등장
-> 더는 SQL에 종속적인 개발을 하지 않아도 됨
Spring Data JPA라는 모듈을 이용하여 JPA 기술을 다룸
관계 : JPA <- Hibernate<-Spring Data JPA
Spring Data JPA 등장 이유는?
-> 구현체 교체의 용이성 : 다른 구현체로 쉽게 교체하기 위함 ex) Hibernate to 다른 것
-> 저장소 교체의 용이성 : 관계형 DB외에 다른 저장소로 쉽게 교체하기 위함 ex) 트래픽 같은것이 많아지면 RDBMS가 아닌 MongoDB같은 DB를 사용해야할 경우가 온다
domain 패키지
-> 게시글, 댓글, 회원, 정산, 결제 등 소프트웨어에 대한 요구사항 혹은 문제영역
-> MyBatis같은 쿼리 매퍼 사용시에 dao 패키지, But, dao와 domain은 결이 조금 다름
'Server > SpringBoot' 카테고리의 다른 글
[SpringBoot] SpringBoot 되새기기 프로젝트 4일차 (2020/05/14) (0) 2020.05.14 [SpringBoot] SpringBoot 되새기기 프로젝트 3일차 (2020/05/13) (0) 2020.05.13 [SpringBoot] SpringBoot 되새기기 프로젝트 1일차 (2020/05/11) (0) 2020.05.12 [SpringBoot] MYBATIS MySql LIKE 동적쿼리 에러 (0) 2019.12.10 [Spring Boot] jar 파일 배포하는 법 (0) 2019.11.19