Inflearn Community Q&A
entity 클래스 개발 2강의에서 질문드립니다
Written on
·
204
0
h2 db에서
CATEGORY
CATEGORY_ITM
DELIVERY
ITEM
MEMBER
ORDERS
ORDER_ITEM
중에서
CATEGORY
CATEGORY_ITEM
ITEM
MEMBER의
4개밖에 생성이 안됩니다
-----------------------------------------
Delivery.java
package jpabook.jpashop.domain;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
@Entity
@Getter
@Setter
public class Delivery {
@Id
@GeneratedValue
@Column(name="delivery_id")
private Long id;
@OneToOne(mappedBy = "delivery")
private Order order;
@Embedded
private Address address;
@Enumerated(EnumType.STRING)
private DeliveryStatus status; //READY, COMP
}
Order.java
package jpabook.jpashop.domain;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@Entity
@Table(name="orders")
@Getter @Setter
public class Order {
@Id @GeneratedValue
@Column(name="order_id")
private Long id;
@ManyToOne
@JoinColumn(name="member_id")
private Member member;
@OneToMany(mappedBy="order")
private List<OrderItem> orderItems=new ArrayList<>();
private Delivery delivery;
private LocalDateTime orderDate; //주문시간
private OrderStatus status; //주문상태[ORDER,CANCEL]
}
OrderIem.java
package jpabook.jpashop.domain;
import jpabook.jpashop.domain.item.Item;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
@Entity
@Getter
@Setter
public class OrderItem {
@Id
@GeneratedValue
@Column(name="order_item_id")
private Long id;
@ManyToOne
@JoinColumn(name="itm_id")
private Item item;
@ManyToOne
@JoinColumn(name="order_id")
private Order order;
private int orderPrice; //주문 가격
private int count; //주문 수량
}
spring-bootjavaJPA웹앱spring
Answer 2
0
yh
Instructor
안녕하세요. 준호님^^
우선 확인해보니 JPA 설정들이 정상으로 되어 있지 않아서 진행이 잘 안되었더라구요.
참고로 실행하고, localhost:9080으로 접근하면 오류 로그를 볼 수 있습니다.
추가로 강의 메뉴얼에 설명드리듯이 프로젝트를 만들 때 스프링에 아직 익숙하지 않으시면 스프링 버전을 꼭! 2.1.16(2.1.x)버전을 선택해서 시작해주세요^^!
class -> enum
기존
package jpabook.jpashop.domain;
public class DeliveryStatus {
//READY, COMP
}
변경
package jpabook.jpashop.domain;
public enum DeliveryStatus {
//READY, COMP
}
class -> enum
기존
package jpabook.jpashop.domain;
public class OrderStatus {
// ORDER,CANCEL
}
변경
package jpabook.jpashop.domain;
public enum OrderStatus {
// ORDER,CANCEL
}
@OneToOne, @Enumerated(EnumType.STRING)추가
기존
public class Order {
private Delivery delivery;
private OrderStatus status; //주문상태[ORDER,CANCEL]
}
변경
public class Order {
@OneToOne
private Delivery delivery;
@Enumerated(EnumType.STRING)
private OrderStatus status; //주문상태[ORDER,CANCEL]
}
띄어쓰기 2칸 주의
application.yml
기존
spring:
datasource:
url: jdbc:h2:tcp://localhost/~/jpashop
username: sa
password:
driver-class-name: org.h2.Driver
변경
spring:
datasource:
url: jdbc:h2:tcp://localhost/~/jpashop
username: sa
password:
driver-class-name: org.h2.Driver
감사합니다.
0





