Ebean中@ManyToOne和@OneToMany双向映射

本文只研究@ManyToOne和@OneToMany的用法,想要学习@ManyToMany的可以点进来,查看我的另一篇文章
代码中使用的是Ebean 11:

        
            io.ebean
            ebean
            11.39.1
        

不同版本的Ebean使用略有差异。

电商项目中我们经常会维护订单表和订单明细表的关系,这也是最典型的OneToMany和ManyToOne关系。那么在项目的具体模块中我们经常会碰到以下场景:
1、查看订单信息的时候需要列出订单明细列表
2、查看订单明细的时候需要列出订单信息
这时候就需要在订单中维护订单明细信息,也就是使用OneToMany;在订单明细中维护订单信息,也就是使用ManyToOne;
先看下我在数据库插入的测试数据(一个订单对应两条明细):
订单表(一条):
在这里插入图片描述
订单明细表(两条):
Ebean中@ManyToOne和@OneToMany双向映射_第1张图片
订单model:
Ebean中@ManyToOne和@OneToMany双向映射_第2张图片

上代码:

//下面这行注解需要加在类上
@JsonIdentityInfo(generator = ObjectIdGenerators.IntSequenceGenerator.class,property = "@id")

@OneToMany(mappedBy = "order",cascade = {CascadeType.PERSIST, CascadeType.MERGE},fetch = FetchType.LAZY)

订单明细model:
Ebean中@ManyToOne和@OneToMany双向映射_第3张图片

上代码:

    @ManyToOne
    @JoinColumn(name = "order_id")

接口:
Ebean中@ManyToOne和@OneToMany双向映射_第4张图片

注意:截图中标红的地方都很重要,漏掉会有各种错误!!!

你可能感兴趣的:(ebean)