摘要:一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
为简化开发工作、提高生产率而生
支持连表查询的mybatis-plus体验!MyBatis-plus风格的连表操作,提供 leftJoin、rightJoin、innerJoin连表操。
使用Apache-2.0开源协议
MyBatis-Plus 最佳搭档,只做增强不做改变,为简化开发、提高效率而生。
只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。
只需简单配置,即可快速进行连表操作,从而节省大量时间。
支持列枚举, 别名, 逻辑删除, TypeHandle, 一对一, 一对多等功能。
Mavencom.github.yulichangmybatis-plus-join-boot-starter1.5.3点击复制Gradle implementation 'com.github.yulichang:mybatis-plus-join-boot-starter:1.5.3'或者clone代码到本地执行 mvn install, 再引入以上依赖注意: MyBatis Plus版本需要3.1.2+class test {@Resourceprivate UserMapper userMapper;void testJoin {//和Mybatis plus一致,MPJLambdaWrapper的泛型必须是主表的泛型,并且要用主表的Mapper来调用MPJLambdaWrapper wrapper = JoinWrappers.lambda(UserDO.class).selectAll(UserDO.class)//查询user表全部字段.select(UserAddressDO::getTel)//查询user_address tel 字段.selectAs(UserAddressDO::getAddress, UserDTO::getUserAddress)//别名.select(areaDO::getProvince, AreaDO::getCity).leftJoin(UserAddressDO.class, UserAddressDO::getUserId, UserDO::getId).leftJoin(AreaDO.class, AreaDO::getId, UserAddressDO::getAreaId).eq(UserDO::getId, 1).like(UserAddressDO::getTel, "1").gt(UserDO::getId, 5);//连表查询 返回自定义ResultTypeList list = userMapper.selectJoinList(UserDTO.class, wrapper);//分页查询 (需要启用 mybatis plus 分页插件)Page listPage = userMapper.selectJoinPage(new Page(2, 10), UserDTO.class, wrapper);}}
对应sql
SELECT t.id, t.name, t.sex, t.head_img, t1.tel, t1.address AS userAddress,t2.province, t2.city FROM user t LEFT JOIN user_address t1 ON t1.user_id = t.id LEFT JOIN area t2 ON t2.id = t1.area_id WHERE (t.id = ? AND t1.tel LIKE ? AND t.id > ?)来源:一飞开源
免责声明:本站系转载,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本站联系,我们将在第一时间删除内容!