zoukankan      html  css  js  c++  java
  • JPA多对一单向关联

    在实际开发过程中,JPA多对一单向关联是使用最多的关联方式。

    下面是订单与订单项的配置关系。

    订单(Order):一的一方,不进行任何配置

    1. @Entity
    2. @Table(name="orders")
    3. public class Order {
    4. @Id
    5. @Column(length=40)
    6. private String orderId; //订单ID
    7. @Column(nullable=false)
    8. private Float amount = 0f; //总价
    9. private Set<OrderItem> items;//订单项(可有可无,查询订单时,无法查出此项)
    10.   public String getOrderId() {
    11. return orderId;
    12. }
    13. public void setOrderId(String orderId) {
    14. this.orderId = orderId;
    15. }
    16. public Float getAmount() {
    17. return amount;
    18. }
    19. public void setAmount(Float amount) {
    20. this.amount = amount;
    21. }
    22. public Set<OrderItem> getItems() {
    23. return items;
    24. }
    25. public void setItems(Set<OrderItem> items) {
    26. this.items = items;
    27. }

    订单项(OrderItem):多的一方,进行ManyToOne关联配置。

    1. @Entity
    2. public class OrderItem {
    3. @Id
    4. @GeneratedValue //ID自增长
    5. private Integer id;
    6. @Column(length=40,nullable=false)
    7. private String productName;
    8. @Column(nullable=false)
    9. private Float sellPrice;
    10. /*
    11. * @JoinColumn(name="order_id") 数据库中外键的名字为order_id
    12. */
    13. @ManyToOne(cascade={CascadeType.MERGE,CascadeType.REFRESH},
    14. fetch=FetchType.EAGER,optional=false)
    15. @JoinColumn(name="order_id")
    16. private Order order;
    17. public Integer getId() {
    18. return id;
    19. }
    20. public void setId(Integer id) {
    21. this.id = id;
    22. }
    23. public String getProductName() {
    24. return productName;
    25. }
    26. public void setProductName(String productName) {
    27. this.productName = productName;
    28. }
    29. public Float getSellPrice() {
    30. return sellPrice;
    31. }
    32. public void setSellPrice(Float sellPrice) {
    33. this.sellPrice = sellPrice;
    34. }
    35. public Order getOrder() {
    36. return order;
    37. }
    38. public void setOrder(Order order) {
    39. this.order = order;
    40. }


    原文地址:https://blog.csdn.net/u011983531/article/details/48728761
  • 相关阅读:
    自定义查询条件存储过程
    管道分隔符Split
    开机进入boot menu和application menu,无法开机
    [SQL]SQL语言入门级教材_SQL数据操作基础(二)
    [SQL]SQL语言入门级教材_SQL功能与特性(一)
    编程规范(三)
    编程规范(二)
    类与结构的差别
    经典命名
    [SQL]SQL Server数据表的基础知识与增查删改
  • 原文地址:https://www.cnblogs.com/jpfss/p/11059838.html
Copyright © 2011-2022 走看看