본문 바로가기
728x90

Spring19

[ JPA ] 연관관계 매핑 기초 연관관계 매핑? 연관관계 매핑이란 객체의 참조와 테이블의 외래 키를 매핑하는 것을 의미한다. JPA에서는 연관 관계에 있는 상대 테이블의 PK를 멤버 변수로 갖지 않고, 엔티티 객체 자체를 통째로 참조한다. 실제로 웹 애플리케이션에서 하나의 엔티티 타입만을 이용하는 경우는 많지 않다. 예를 들어 Member Entity, Team Entity가 있을 때, Team은 여러 Member를 갖는 관계를 가지고 있다. 물론 단순히 참조하는 것만으로는 연관관계를 맺을 수 없다. 매핑하는 방법은 뒤에서 알아보도록 하고, 그전에 연관관계 매핑을 이해하기 위한 3가지 키워드에 대해 알아보자. 방향( Direction ) 방향에는 단방향과 양방향이 있다. 단방향 관계 두 엔티티가 관계를 맺을 때, 한쪽의 엔티티만 참조하.. 2024. 3. 7.
[ JPA ] Entity Mapping Entity Mapping Entity Mapping은 객체와 데이터베이스 테이블 간의 매핑을 정의하는 작업을 말한다. Java 언어로 정의된 Entity Class와 데이터베이스의 릴레이션(테이블) 간에 어떤 관계를 맺을지를 지정하는 것이며, 이를 통해 객체 지향 프로그래밍과 관계형 데이터베이스 간의 변화를 가능하게 한다. Entity Mapping을 통해 Entity Class의 필드와 데이터베이스의 칼럼을 매핑하고, 객체 간의 관계를 데이터베이스의 외래 키(Foreign Key)와 연결하는데, JPA를 사용하여 데이터베이스와 상호작용하는데 필요한 정보를 제공해 준다. Entity Mapping은 아래와 같이 크게 4가지로 분류할 수 있다. 객체와 테이블 매핑: @Entity, @Table 기본 키 .. 2024. 2. 26.
[ JPA ] 영속성 컨텍스트(Persistence Context) 개념 정리 및 사용법 영속성 컨텍스트(Persistence Context) 영속성 컨텍스트(Persistence Context)란 엔티티를 영구 저장하는 환경이라는 뜻으로, 애플리케이션과 데이터베이스 사이에서 객체를 보관하는 가상의 데이터베이스 같은 역할을 한다. 이 과정에서 가상의 데이터베이스에 저장할 때 EntityManager를 사용하는데 개념은 아래에서 다루겠다. 영속성 컨텍스트는 JPA를 이해하는데 가장 중요한 용어이다. 간단하게 정리하면 다음과 같다. 영속성 컨텍스트는 논리적인 개념 눈에 보이지 않음 엔티티 매니저를 통해 영속성 컨텍스트에 접근 즉, EntityManager로 Entity를 저장하거나 조회하면 EntityManager는 영속성 컨텍스트에 Entity를 보관하고 관리한다. EntityManageFac.. 2024. 2. 21.
[ Spring ] File Upload - Spring 이전 포스팅에서 Servlet이 제공하는 Part를 사용해서 파일 업로드 하는 방법에 대해 알아봤습니다. 이어서 Spring이 이 부분을 얼마나 편리하게 제공하는지 알아보겠습니다. [ Spring ] File Upload - Servlet File Upload - 소개 일반적으로 사용하는 HTML Form을 통한 파일 업로드를 이해하려면 먼저 폼을 전송하는 다음 두 가지 방식의 차이를 이해해야 한다. ■ HTML 폼 전송 방식 application/x-www-form-urlencoded mul drg2524.tistory.com Spring File Upload Spring은 MultipartFile이라는 Interface로 멀티파트 파일을 매우 편리하게 지원한다. SpringUploadControlle.. 2024. 2. 6.
[ Spring ] File Upload - Servlet File Upload - 소개 일반적으로 사용하는 HTML Form을 통한 파일 업로드를 이해하려면 먼저 폼을 전송하는 다음 두 가지 방식의 차이를 이해해야 한다. ■ HTML 폼 전송 방식 application/x-www-form-urlencoded multipart/form-data application/x-www-form-urlencoded 방식 application/x-www-form-urlencoded 방식은 HTML 폼 데이터를 서버로 전송하는 가장 기본적인 방법이다. Form 태그에 별도의 enctype 옵션이 없으면 웹 브라우저는 요청 HTTP 메시지의 헤더에 다음 내용을 추가한다. Content-type : application/x-www-form-urlencoded 그리고 폼에 입력한 .. 2024. 1. 31.
[ Spring ] Spring Type Converter - Formatter 이전 포스팅에 이어서 진행하겠습니다. Converter에 대한 개념을 먼저 알아보시면 이해하는데 도움이 될 거 같습니다. [ Spring ] Spring Type Converter 이전 포스팅에서 Spring Exception Handling에 대해 알아봤습니다. 오늘은 Spring Type Converter 정리를 해보겠습니다. Spring Type Converter 문자를 숫자로 변환하거나, 반대로 숫자를 문자로 변환해야 하는 것처 drg2524.tistory.com Formatter Converter는 입력과 출력 타입에 제한이 없는, 범용 타입 변환 기능을 제공한다. 이번에는 일반적인 웹 애플리케이션 환경을 생각해 보자. 불린 타입을 숫자로 바꾸는 것 같은 범용 기능보다는 개발자 입장에서 문자를 .. 2024. 1. 30.
728x90