Entity 2

Entity와 영속화

오늘은 영속화에 대해 말해보겠다.스프링은 자바에 있는 객체를 어떻게 DB의 테이블과 맵핑하여 데이터를 저장해주는 걸까?우리는 여기서 Entity, EntityManager, EntityContext에 대해 알아봐야 한다. 그전에 "영속화"라는 말에 대해 알아보자.자바 프로젝트 안의 객체는 프로젝트가 꺼지면, 즉 JVM이 꺼지면 사라진다.그런데 우리는 이 객체를 JVM이 꺼진 이후에도 유지하고 싶다는 생각을 하게 된다.객체는 RDB의 관점에서 생각해보면 하나의 Row를 뜻한다.따라서 객체는 하나의 데이터 집합이고, 이를 영속적으로 유지하고 싶다는 생각에서 자바의 "영속화" 개념이 시작된다. 그래서 우리는 영속화 방법으로 객체를 DB에 저장하는 방법을 고안했다.여기서 어떻게 자바 객체를 DB의 테이블과 맵핑..

백엔드/Spring 2024.07.29

DTO에 대해

DTO는 Data Transfer Object의 줄임말로, 데이터 전송 객체를 뜻한다.데이터를 전송한다?어떤 데이터를 어디서 어디로 전송한다는 말일까?오늘은 이 DTO에 대해 알아보겠다. 회원가입과 로그인 기능을 구현해보자.우선 사용자 객체가 필요할 것이다.public class User { private String loginId; private String password; private String nickname;} 나는 User 객체를 위와 같이 작성했다. 이제 Controller 클래스와 Service, Repository 클래스를 만들어서 본격적으로 API 개발을 시작해보려고 한다.그런데 클라이언트에서 받는 요청과 응답에 User 객체를 써도 될까? 우선 그렇게 개발을 해보자..

백엔드/Spring 2024.07.22
반응형