NutzCN Logo
问答 关于映射关系效率问题
发布于 2929天前 作者 yong9664 1559 次浏览 复制 上一个帖子 下一个帖子
标签:

A实体:
@One(B.class)

B b;

List a = dao.fetchLinks(dao.query(A.class, Cnd), null);
通过fetchLinks的查询映射关系,当list有100万条数据时,会请求100万次数据库去查询B,是这个概念吧?效率是不是会很差?
如果效率非常差,为了效率问题,查询映射关系,除了自定义sql,还有方便的方式吗?

7 回复

没有,只能自定义sql,自己封装一下即可

如果fetchLinks会查很多数据,那得检讨为啥关联那么多记录了,起码得分页查哦

@wendal 嗯嗯,知道了! 一般是不会查询很多数据,但是导出导出....

@wendal 还有这种情况...
A实体:
@Many(B.class)
List b;
B实体:
@One(C.class)
C c;
A a = dao.fetchLinks(dao.fetch(A.class, Cnd), null);
dao.fetchLinks(a.getB(), null);
如果a.getB()有100万条数据... 这样是不是就完了.... 要是给a.getB()分页要怎么写啊?

@yong9664 fetchLinks的第二个参数是cnd

如果一次取100w条,这是设计有问题。

@wendal @Many是根据主键关联过滤后的,如果真有100万数据也真没办法啊....
要是给a.getB()分页要怎么写啊? cnd.limit()吗?

添加回复
请先登陆
回到顶部