jpa (9) 썸네일형 리스트형 [JPA] Entity 가 Update 되는 과정에 대해서 아니 JPA 에서 UPDATE 되는 과정 JPA(Java Persistence API)에서 업데이트 과정은 다음과 같이 이루어집니다: 1. 엔티티 조회 먼저 업데이트할 엔티티를 데이터베이스에서 조회합니다. 이는 주로 `EntityManager`를 사용하여 해당 엔티티를 조회하는 쿼리를 실행하는 방식으로 이루어집니다. 2. 엔티티 수정 조회한 엔티티를 수정합니다. 이때 JPA는 영속성 컨텍스트(Persistence Context)에서 관리하는 엔티티를 수정합니다. 수정은 엔티티의 필드를 변경하거나 메소드를 호출하여 이루어질 수 있습니다. 3. 트랜잭션 커밋 업데이트된 엔티티를 데이터베이스에 반영하기 위해 트랜잭션을 커밋합니다. 이때 JPA는 변경된 엔티티를 감지하고 해당 엔티티에 대한 UPDATE SQL 문을 .. JPA ( Java Persistence API ) JPA ( Java Persistence API ) ▶ 개념 • 자바 진영에서 ORM( Object - Relational Mapping ) 기술 표준으로 사용되는 인터페이스 모음 • 구현된 클래스와 매핑을 해주기 위해 사용되는 프레임워크 • JPA 를 구현한 대표적인 오픈소스로는 Hibernate가 있다. JPA 구현체 ※ ORM( Object - Relational Mapping ) • 객체와 관계형 데이터베이스의 데이터를 자동으로 Mapping( 연결 ) 해주는 것을 의미한다. • 객체지향 프로그래밍 - 클래스 사용 / 관계형 데이터베이스 - 테이블 사용 객체 모델과 관계형 모델간의 존재하는 불일치를 ORM을 통해 객체간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치 해결한다. ▶ JPA 동작.. [ 사이드 프로젝트 (스프링 부트 / JPA / vue) ] 따자 드디어 배포하다. http://ec2-13-125-129-135.ap-northeast-2.compute.amazonaws.com/ Vue Element Admin ec2-13-125-129-135.ap-northeast-2.compute.amazonaws.com 작년 이맘 때 쯤이었나.. 매일 사이드 프로젝트를 해야 한다는 생각은 있었지만 막상 시작은 못하고 있었다. 어쩌다 두 명이서 시작한 프로젝트가 우당탕탕 하며 진행하다 거의 막바지에는 따로 하기로 합의를 봤다. 그래서 온전히 내 결과물은 아니지만, 끝까지 해낸 내가 뿌듯해죽겠다. 개발도 개발이지만 서버에 배포하는게 발목을 잡힐 것이라는 생각을 늘 가지고 있었는데, 역시나 회사에서 하는 서버 배포는 선배들이 다 설정해두고 나는 잘 차려놓은 밥상을 떠먹기만 하면 되니.. [ JPA ] Save 후 Id 구하기 삽입을 목적으로 vo를 save 를 이용하여 삽입했을 때 생성된 id 를 구하는 법은 아주 간단하다. repository.save( vo ).getId(); save 를 진행한 repository 가 반환 하는 것은 방금 내가 저장한 vo 에 대한 저장된 결과 이기 때문이다. Ddaja - Word 개발 Word 사이드 프로젝트 "따 자" 에서 사용자들이 단어를 외울 수 있는 기능을 개발 중이다. word 는 내가 따자를 만들고자 할 때 가장 만들고자 했던 페이지이다. 내가 자격증 취득 하려고 하는 시기에 가장 힘들었던, '낮선 용어 외우기' 그 일을 조금이나마 쉽게 할 수 있도록 개발 중이다. Word 를 바라보는 시선. Word 페이지는 관리자가 사용하는 Admin Word , 그리고 word 기능을 이용할 User Word. Admin Word 자격증별로 Word 카테고리를 확인 할 수 있다 게시판 형식 Word 카테고리를 추가, 삭제, 수정이 가능해야 한다. Word 카테고리 추가 Word 카테고리 입력 받아야 하는 속성들. 카테고리명 단어들 저장 액셀 파일을 업로드 하여 여러 단어들을 저장할 수.. [JPA] 연관 관계 정리 JPA 를 하면서 테이블간 연관관계 맺기 JPA 에서는 연관 관계를 잘못 맺으면 무한 루프가 .. 발생한다. 고생 좀 했어서 정성스럽게 기록해야지 연관관계 이해하는 예시 "자동차 - 바퀴" 연관관계의 주인은 바퀴가 가지고 자동차는 연관관게를 당하는 입장이다. 아래 두개의 Table 간의 Column 의 연관관계를 맺어보자. TABLE : MEMBER COLUMN : M_ID TABLE : TEAM COLUMN : T_ID TEAM 더보기 ✔ Team - Team 은 여러명의 Member를 가질 수 있다. ㄴ 즉, Team 은 연관관계의 주인이 될 수 없다. 위의 예시에서 자동차 같은 역할을 한다. - Member List 를 담는 변수를 보면 Members 인데 Member 의 Setter 를 보면 se.. JPA - 프로젝션 프로젝션 ? SELECT 절에 조회할 대상을 지정하는 것을 프로젝션이라 하고 { SELECT {프로젝션 대상} FROM } 으로 대상을 선택한다. 🔴 프로젝션 대상 엔티티 엠비디드 타입 스칼라 숫자, 문자 등 기본 데이터 타입 🔴 엔티티 프로젝션 SELECT m FROM Member m SELECT m.team FROM Member m 둘 다 엔티티를 프로젝션 대상으로 사용한다. 쉽게 생각하면 원하는 객체를 바로바로 조회한다는 것이다. 컬럼을 하나하나 나열에서 조회해야 하는 SQL 과 차이가 있다. 참고로 이렇게 조회한 엔티티는 영속성 컨텍스트에서 관리 된다. 🔴 임베디드 타입 프로젝션 JPQL 에서 임베디드 타입은 엔티티와 거의 비슷하게 사용된다. 임베디드 타입은 조회의 시작점이 될 수 없다는 제약이 .. JPA 공부하기 🔻 JPA 공부하기 ✅ JPA - Java Persistence API - ORM을 사용하기 위한 인터페이스를 모아둔 것 - 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스 - 자바 진영의 ORM 기술 표준 ✅ ORM - Object-relational mapping(객체 관계 매핑) - 객체는 객체대로 설계 - 관계형 데이터베이스는 관계형 데이터베이스대로 설계 - ORM 프레임워크가 중간에서 매핑 - 객체를 ORM 프레임워크에 저장하면, ORM 프레임워크가 SQL을 생성해서 객체를 DB에 관리 - 대중적인 언어에는 대부분 ORM 기술이 존재 ✅ JPA를 사용하는 이유 - SQL 중심적인 개발에서 객체 중심으로 개발 - 개발 생산성 향상 - 유지보수 편의 - 패러다임의 불일치.. 이전 1 2 다음