使用querydsl如何检查由一对多关系产生的一组对象中的特定对象?

cod*_*Les 15 java jpa querydsl

我有一个Person JPA实体,我的Person有多个地址(从Person到Address的OneToMany关系).我希望能够对所有拥有粒子邮政编码的人进行查询,但在查看querydsl文档后如何正确处理集合时我不确定.

我可以访问地址,但我不知道如何处理它们:

QPerson qPerson = QPerson.person;
personDao.findAll(qPerson.addresses._SPECIFICADDRESS_.zip.eq('73130'));
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得我正在寻找的SPECIFICADDRESS

Tim*_*per 27

试试这个

QPerson qPerson = QPerson.person;
personDao.findAll(qPerson.addresses.any().zip.eq('73130'));
Run Code Online (Sandbox Code Playgroud)

  • 看起来应该很简单.这就是Querydsl的意思!;) (7认同)