저는 IBM RAD 7.5 및 WebSphere 7을 사용하고 있습니다.JPA 엔티티의 OneToMany 관계에없는 것이 있습니까?
OneToMany 관계 (예 : 고객 및 주문)가있는 두 개의 엔티티가 있습니다. 주문한 고객을 만들면 두 엔티티가 올바르게 유지됩니다. 나는 Fetch = FetchType.EAGER를 가져 왔지만 Customer 엔티티를 읽을 때 Orders를 포함하지 않습니다.
내가 뭘 잘못하고 있니? 여기에 내가 잘못 뭐하는 거지 ...
@Entity
@Table(name="CC_CUSTOMER")
public class Customer implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private BigDecimal id;
@OneToMany(cascade=CascadeType.ALL,mappedBy="customer",fetch=FetchType.EAGER)
private List<Order> orderList;
public List<Order> getOrderList() { return this.orderList; }
public void setOrderList(List<Order> orderList) { this.orderList = orderList; }
/*...*/
}
... 그리고 ...
@Entity
@Table(name="CC_ORDER")
public class Order implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private long id;
@ManyToOne
@JoinColumn(name="customerid",nullable=false)
private Customer customer;
public Customer getCustomer() { return this.customer; }
public void setCustomer(Customer customer) { this.customer = customer; }
/*...*/
}
을 몇 가지 코드입니까? 또한
, 여기 내 DAO는 ... 같은
@Stateless
public class CustomerDAO {
public List<Customer> getAll() {
List<Customer> customers = new ArrayList<Customer>();
EntityManager em = getEntityManager();
try {
Query query = em.createQuery("select c from Customer c");
customers.addAll(query.getResultLists());
} finally {
em.close();
}
}
return customers;
}
어떤 조언을 모습이나 제안이 크게 감사합니다, 감사합니다! Rob
엔티티를 어떻게 저장하고 있습니까? ... 주문을 유지하거나 고객을 지속적으로 유지 하시겠습니까? –
'getOrderList' 메소드에서 코드를 게시 할 때 유형을 만든다고 가정합니다. – Perception
나는 고객을 존속시키고 있습니다. 구체적으로 '고객 c = 새 고객(); 주문 o = 새 주문(); c.getOrderList(). add (o); customerDAO.createCustomer (c); ' –