从Thead对象中想要查询出用户的全部数据
常规方法
// 从Thread对象中获取所有会员ID
List<Long> memberIdList = threadList.stream().map(BizThread::getMemberId).collect(Collectors.toList());
// 查询会员信息并放入memberMap
List<BizMember> mList = new ArrayList();
memberIdList.forEach(memberId -> {
BizMember member = BizMember.find.byId(memberId);
mList.add(member);
});
这样的时间复杂度是O(n),因为用到了循环遍历 -------------------------------------------------------------------------------- 如果使用Ebean框架的in方法就可以将时间复杂度降低到O(1)
Map<Long, BizMember> memberMap = new HashMap<>();
List<BizMember> memberList = BizMember.find.query().where().in("id", memberIdList).findList();
for (BizMember member : memberList) {
memberMap.put(member.getId(), member);
}