강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

skehdxhd님의 프로필 이미지
skehdxhd

작성한 질문수

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

Update 질문

작성

·

173

0

안녕하세요. 강사님 강의 듣고 프로젝트에 적용시켜 보고 있습니다.

만약 예를들어, 상품 테이블과 추가상품 테이블이 1대 다 관계로 있다고 가정하고,

판매자 입장에서 상품을 등록한다고 합니다.

추가상품은 상품 테이블의 pk를 외래키로 받고, 예를들어 

[{볼펜 : 3개},

{공책 : 2개},

{지우개 : 4개}]

이런식으로 등록된다고 합니다.(컬럼은 추가상품과 개수. 2개가 되겠죠)

그런데 여기서 판매자가 상품을 수정할때, 추가상품도 동시에 수정할수 있는데

[{볼펜 : 3개},

{공책 : 2개},

{파일 : 2개}]

이런식으로 개수가 똑같은 상태에서 수정될 경우에는 문제 없이 되는데

[{볼펜 : 4개},

{파일 : 1개}]

추가상품의 개수를 3개에서 2개로 줄이거나, 3개에서 4개로 늘려버린다면,

이럴 경우에는 상품 수정을 어떻게 해야하나요??

답변 2

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. skehdxhd님

질문이 머리속에 정확하게 그림이 안그려지지만, 추가 질문해주신 내용으로 보면

JPA 기본편의 값 타입 컬렉션 부분을 공부해보시면 도움이 되실거에요.

감사합니다.

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. skehdxhd님

도움을 드리고 싶은데, 질문을 잘 이해하지 못했습니다.

PK를 포함해서 테이블 DDL을 명확하게 그리고, 그 안에서 샘플 INSERT 쿼리, 실행해보고 싶은 UPDATE 쿼리등을 포함해서 최대한 자세히 설명해주시겠어요?

skehdxhd님의 프로필 이미지
skehdxhd
질문자

update문을 날릴 필요 없이 jpa에서는 더티체킹으로 값 수정이 가능하다고 배웠습니다.

그러면 만약에 그 값이 일반 변수가 아니라 리스트 타입의 컬렉션이어도 더티체킹으로 수정이 가능한지를 여쭤보는 질문이었어요!

skehdxhd님의 프로필 이미지
skehdxhd

작성한 질문수

질문하기