Lambda模式SQL查询妙用

备注

以下是使用sqltoy-orm以及sqltoy-plus框架进行查询对比,并且单表查询

代码

  • 原生SQL
        String sql = "select * from sys_user where #[is_deleted=:isDeleted] #[and is_menu=:isMenu] #[and menu_type=:menuType]";
        Map<String, Object> params = new HashMap<>();
        params.put("isDeleted", IsEnum.N.getCode());
        params.put("isMenu", IsEnum.Y.getCode());
        params.put("menuType", MenuTypeEnum.MENU.getCode());
        List<SysUser> list = sqlToyHelperDao.findBySql(sql, params, SysUser.class);
  • 实体查询模式
        EntityQuery query = EntityQuery.create()
                .where("#[is_deleted=:isDeleted] #[and is_menu=:isMenu] #[and menu_type=:menuType]")
                .names("is_deleted", "is_menu", "menu_type")
                .values(IsEnum.N.getCode(), IsEnum.Y.getCode(), MenuTypeEnum.MENU.getCode());
        List<SysUser> list = sqlToyHelperDao.findEntity(SysUser.class, query);
  • lambda模式
        LambdaQueryWrapper<SysMenu> sysMenuWrapper = new LambdaQueryWrapper<>(SysMenu.class)
                .select()
                .eq(SysMenu::getIsDeleted, IsEnum.N.getCode())
                .eq(SysMenu::getIsMenu, IsEnum.Y.getCode())
                .eq(SysMenu::getMenuType, MenuTypeEnum.MENU.getCode());
        List<SysMenu> list = sqlToyHelperDao.findList(sysMenuWrapper);

END

记录下为什么当初会选择lambda,原来是这样!!!

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值