栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

关于实体类中多层嵌套集合,用mybatis的collection标签可以快速实现

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

关于实体类中多层嵌套集合,用mybatis的collection标签可以快速实现

一,首先分析需求在有三个实体类的情况下,好比user类,Student,YearClass类,结构如下

//最外层类
public class user {
    private String name;
    private String age;

    private List students;
}

//中间层类
public class Student {

    private String school;

    private String addr;

    private List yearClasses;
}
//最内层类
public class YearClass {
    private String classNo;

    private int stuNum;

}



 由于本人工作经验不多,之前碰到这种情况,我都是用循环逐个赋值,但是这次由于对效率有效求,所以就舍弃之前的循环赋值的方法,就用了mybatis中collection标签进行嵌套赋值,这个方法真的写起来非常简便,比我之前那种笨方法好太多了。

二. XML层大概如下所示

    
        
        
        

        
    

    
        
        
        

        
    

    
        
        
    

这中结构是在xml中将集合中的元素用了collection标签,而且可以多级嵌套(能多少我也不清楚,我最多是三层,更多没试过)

而且这样的话SQL的编写,只需要将字段的值查出来就行,注意名字自定要和resultMap标签中的名字一一对应就行(顺序乱了没关系),这样mybatis会自己帮我们处理结果,而且到MVC层我们就不需要进行逐一赋值了,直接调用mapper层接口就行,会省去很多的麻烦

@PostMapping
    private Object getData() {

        List users = userAllMapper.selectStu();

        return users;
    }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/349603.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号