通用mapper如何处理多表条件查询通过list封装(强烈不推荐)(一对一,一对多)
生活随笔
收集整理的這篇文章主要介紹了
通用mapper如何处理多表条件查询通过list封装(强烈不推荐)(一对一,一对多)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、思路1:在service封裝通過list的組合,強烈不建議,有性能問題,例如:@Autowiredprivate StudentDao studentDao;@Autowiredprivate Stu_labelDao stu_labelDao;@Autowiredprivate CityDao cityDao;@Autowiredprivate ClazzDao clazzDao;@Autowiredprivate GroupDao groupDao;@Autowiredprivate LabelDao labelDao;@Testpublic void testQuesyAllStudent(){List<Student> students = studentDao.selectAll();for (Student student:students){//通用Mapper的dao方法 select(Object o),根據對象非空屬性做條件查詢查詢//city屬性List<City> cities = cityDao.select(student.getCity());City city = cities.get(0);student.setCity(city);//clazz屬性List<Clazz> clazzes = clazzDao.select(student.getClazz());Clazz clazz = clazzes.get(0);student.setClazz(clazz);//group屬性List<Group> groups = groupDao.select(student.getGroup());Group group = groups.get(0);student.setGroup(group);//label集合Stu_label stu_label = new Stu_label();stu_label.setSid(student.getId());List<Stu_label> stu_labels = stu_labelDao.select(stu_label);List<Label> labels = new ArrayList<>();for (Stu_label s:stu_labels){Label label = labelDao.selectByPrimaryKey(s.getLid());//主鍵策略,根據主鍵查詢labels.add(label);}student.setLabels(labels);}}
總結
以上是生活随笔為你收集整理的通用mapper如何处理多表条件查询通过list封装(强烈不推荐)(一对一,一对多)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VMVare 虚拟机使用桥接模式
- 下一篇: centos7 致命错误:curl/cu