首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ebean ManyToMany查询

Ebean ManyToMany查询
EN

Stack Overflow用户
提问于 2012-11-16 23:31:50
回答 1查看 4.7K关注 0票数 9

我有两个类,user和car。两者都有彼此的ManyToMany映射。

用户:

代码语言:javascript
复制
@Entity
public class User extends Model {

    private int year;

    @ManyToMany(cascade=CascadeType.ALL)
    private List<Car> cars;
}

汽车:

代码语言:javascript
复制
@Entity
public class Car extends Model {
    @ManyToMany(mappedBy = "cars", cascade=CascadeType.ALL )
    private List<User> users;
}

使用ebean,我只想查询那些1999年的汽车,这些汽车在他们的列表中有给予用户。我不想在Java代码中迭代用户的汽车列表。

我没有找到任何关于多对多查询应该是什么样子的文档。所以我会这样做:

代码语言:javascript
复制
public List<Car> findCars(int year, User user) {
    return Car.find.where().eq("year", int).eq("users", user).findList();
}

使用Ebean可以做到这一点吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-16 23:45:48

检查相似的question (and answer)

很可能你的finder应该是这样的:

代码语言:javascript
复制
public List<Car> findCars(int year, User user) {
    return find.where().eq("year", year).eq("users.id", user.id).findList();
}

顺便说一句,我假设你有一些id字段,但没有显示给我们。另外,将字段设置为公共字段,这样就不需要为每个字段编写getter/setter。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13419624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档