老师我想问下多表关联查询,怎么查询指定的属性
数据表关系
最终想得到的对象
方案1:实体关联查询
如果用导航属性查询的话,一个shop entity会关联很多其他的entity,查询时也会查询出不必要的属性。
方案2:@Query
@Query(value="select new ShopVo(parameter1,parameter2,parameter3) from xxx left join xxx")
方案3:QueryDSL
代码就不写了,和.NET 的EF应该有点像,会受到模型中定义的@OneToOne或者@OneToMany等注解影响
方案4:Criteria查询
这种不封装的话查询起来比较费劲
总结:
我个人比较倾向于QueryDSL,就是会受到模型中属性上的注解影响。
我不是很了解目前比较流行的复杂查询方案,猜测是Criteria。
请问老师:
1 目前什么方案比较流行呢?
2 有没有方便的方案能在多表查询时,只查询某些字段呢
谢谢老师。
34
收起
正在回答 回答被采纳积分+1
1回答
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星