[JPA] 엔티티 클래스와 요청/응답 클래스JPA를 공부하고 여러 강의를 들으면 모두 엔티티 클래스와 요청/응답 클래스를 항상 분리한다.어림짐작으로 이유를 생각해봤지만 확실한 이유를 정리해보려 한다. 1. Entity & DTO우리는 요청/응답 클래스를 일반적으로 DTO 라고 하며 JPA로 설계한 도메인 클래스를 엔티티라고 하는데 이 두개가 무엇을 의미하는지 한번 알아보자◼ Entity엔티티 클래스는 DB 테이블과 맵핑되는 핵심 클래스DB의 테이블에 존재하는 컬럼들을 필드값으로 가지는 객체를 의미한다.엔티티는 DB 영속성(persistent) 의 목적으로 사용되는 객체이기 때문에 이를 응답/요청에 사용하는 것은 좋지 않다.서비스, 비지니스 로직들이 엔티티 클래스를 기준으로 동작한다.그렇기 때문에 엔티티..
[JPA기초] JPA 활용 설계JPA를 이용한 DB 연동 방법 및 엔티티 설계, 인터페이스 등에 대해서 알아보겠다.이전 포스팅에서 JPA가 무엇인지를 알아보았고 이제 실제로 동작하는 기능 및 설계를 알아보자 [JPA기초]JPA란❔JPA란❔국내의 서비스 업체중 Spring 프레임워크를 사용하는 많은 기업들이 JPA를 표준으로 하여 서비스를 개발하고 있다.그럼 JPA가 무엇인지 어떤 특징이 있는지를 알아보기 위해서 먼저 JPA가 어developer-dodo.tistory.com 1. 데이터베이스 연동먼저 스프링 부트 프로젝트를 생성한다.라이브러리는 다음과 같이 추가한다.Dev Tool : Lombok, Spring Configuration ProcessorWeb : Spring WebSQL : Spring..
JPA란❔국내의 서비스 업체중 Spring 프레임워크를 사용하는 많은 기업들이 JPA를 표준으로 하여 서비스를 개발하고 있다.그럼 JPA가 무엇인지 어떤 특징이 있는지를 알아보기 위해서 먼저 JPA가 어떤 특징을 가지고 있는지그리고 MyBatis와는 어떤 점이 다른지 한번 알아보겠다.1. ORMJPA를 알기 전에 먼저 ORM에 대해서 정의를 하고 넘어가보자ORM을 Object Relational Mapping 의 줄임말로 번역하면 객체 관계 맵핑을 의미한다.객체지향 언어에서 의미하는 객체와 RDB에서 테이블을 자동으로 맵핑해주는 방법이다. 클래스는 DB 테이블과 맵핑 하기 위해서 만들어 진 것이 아니다. 그렇기 때문에 테이블과 객체에는 불일치가 존재한다.ORM은 바로 이 둘의 불일치, 제약사항을 해결하는..