inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Trong thực tế! Sử dụng Spring Boot và JPA1 - Phát triển ứng dụng Web

Tìm kiếm, hủy danh sách đơn hàng

DB 초기화 관련 질문입니다.

Đã giải quyết

499

tingkim

4 câu hỏi đã được viết

0

강의 정말 잘 듣고 있습니다. 감사드립니다.

영한님의 경우 프로젝트 재실행마다 모든 DB 테이블이 초기화 되는데, 저는 주문 내역만 초기화되고, 이외의 테이블들은 초기화가 되지 않습니다. ( 근데 또 이상한게 아까 설정 한번 건드려봤을 땐 한번 됐었는데 또 안되네요;; )

어떻게 설정을 바꾸면 모두 초기화가 될까요? 주문 내역 테이블은 초기화가 되는데, delivery 테이블은 초기화가 되지 않아서 PK 중복 에러가 자꾸 나네요ㅠ

main의 application.yml

test의 application.yml

p.s. 영한님 저서 '자바 ORM 표준 JPA 프로그래밍' 책은 2015년 출간 되었던데, 이후 개정된 적은 없나요?!

java spring 웹앱 JPA spring-boot

Câu trả lời 4

1

tingkim

감사합니다 영한님 다음 JPA도 열심히 수강하겠습니다 :)

좋은 주말 보내세요!

1

yh

안녕하세요. Ting-Kim님

혹시 build.gradle에 다음 부분이 지정되어 있는지 확인해주세요.

이렇게 하면 h2 데이터베이스 1.4.200 제약조건 문제로 테이블 초기화가 안되는 문제를 해결할 수 있습니다.

이렇게 설정하고 gradle refresh 하신 다음에 만약 그래도 문제가 발생하면, 전체 프로젝트를 압축해서 올려주세요.

p.s: JPA 책은 JPA 3.0 버전이 나오면 개정하려구요^^ 아직은 JPA 자체가 크게 바뀌지 않아서 개정하지 않았습니다.

ext["hibernate.version"] = "5.4.20.Final" //하이버네이트 버전 지정
ext["h2.version"] = "1.4.200" //h2 데이터베이스 버전 지정

0

yh

안녕하세요. Ting-Kim님

코드를 돌려보았습니다. 잘 되더라구요^^

우선 create 모드로 진행하셨기 때문에, 처음에 테이블을 모두 삭제하고, 애플리케이션 종료 이후에는 테이블에 데이터가 남아있어야 합니다. 참고로 create-drop 모드는 애플리케이션 종료 시점에 테이블을 모두 drop 합니다.

따라서 Delivery 테이블의 결과가 그대로 남아있는 것이 맞습니다. 추가로 주문 내역도 남아있어야 합니다.

Delivery 테이블의 결과에 STATUS가 READY로 남아있는 것은 주문 취소를 했을 때 주문상태를 변경하는 로직을 예제에서 따로 개발하지 않았기 때문입니다^^

도움이 되셨길 바래요.

0

tingkim

감사합니다 영한님. 잘 해결되었습니다.

그런데 마지막으로 돌려보니 궁금한점이 생겼습니다.

주문을 취소했을 경우에 주문내역에서 취소는 잘 되고 DB에서도 삭제가 되는 것을 확인하였는데,

DELIVERY 테이블에서는 그대로 DB에 남아있고, STATUS도 READY 상태로 있더라구요.

제가 빠트린건지 아니면 이 부분은 따로 일부러 예제에 넣지 않으신건지 궁금합니다..!

혹시 몰라서 코드 압축파일 송부드렸습니다 :)

sdk 설정 오류

0

49

2

오탈자 - @Transactional

0

55

1

src/test/resources 테스트 경로 문제

0

50

1

상품 등록후 H2 db 출력 순서 바꿀 수 있나요?

0

63

1

MemberRepositoryTest 실행오류

0

80

1

boot 4.x >>> trasasction rolled back log & p6spy(영한님, 수업 자료 업데이트 해주시면 감사하겠습니다!!)

1

183

2

강의 마지막 QueryDSL 사용 부분 질문있습니다

1

137

2

클라이언트에서 isbn과 author 수정 요청을 한 경우에 대해 질문드립니다.

0

51

1

도메인 모델 패턴 vs 트랜잭션 스크립트 패턴

0

71

1

기본 생성자

0

60

1

h2 DB 연결시 jdbc url 변경 이유가 궁금합니다.

0

100

1

멤버서비스테스트 부분에서 막힙니다.

0

164

4

실무에서도 EntityManager를 이용해서 많이 작업하는 편일까요?

0

116

1

초반에 h2 다운로드 과정 꼭 필요한가요?

0

118

2

자신 필드에도 get으로 접근하는 이유가 있을까요?

0

112

1

24분 27초 연관관계 편의 메서드 위치

0

113

1

단건 주문만 가능하게 한건 의도한 부분이신가요?

0

108

2

빌드 툴, Gradle

0

58

1

h2연결은 된 것 같은데 엔티티 테이블까지 작성 후 확인해보아도 테이블이 안보입니다

0

76

2

Repository에서 EntityManager 주입 방식 차이

0

88

1

롬복과 사용자 정의 setter 메서드

0

71

1

주문 목록 조회 fetch join 질문드립니다

0

81

1

dirty checking 질문드립니다.

0

81

1

동시성 관련 질문입니다

0

73

1