-
这里通过让实体类集成Model<实体类>对象,可以开启AR模式,即直接通过对象进行数据库的动态操作。ActiveRecord。这里注意删除逻辑,删除不存在时也算删除成功。
查看全部 -
更新的写法同样有五种:
传入更新后的对象实例,和条件Wrapper
传入空对象,通过在条件Wrapper后加入set方法
构建Wrapper时传入条件实体对象
通过匿名表达式,构造Wrapper
通过匿名表达式链式调用(参数为mapper)
查看全部 -
分页插件,主要的目的就是offset limit,通过传入定义好的Ipage对象,规定当前页和每个页的大小,会返回各种数据,如总记录数,总页数,当前页的数据等。
可以通过自定义SQL实现一些个性化的多表查询之类的。
查看全部 -
支持使用条件构造器自定义SQL,可以通过在Mapper中
也可以将sql语句放在xml中
查看全部 -
通过lambdaWrapper进行构造,能够防止误写,其有三种普通的构造方法,推荐使用Wrappers.lambda...
还可以通过lambdaWrapperChain构造,直接可以调用Mapper的方法(方便)。
查看全部 -
selectMaps用于返回自定义字段和查询特定字段时避免其他字段为null
selectObjs用于返回结果的第一个字段
selectCount不能带select,因为它查询的时记录数量,对应于sql中的count(1)
selectOne用于输出一条结果,如果多与一条报错
查看全部 -
allEq中主要传入一个Map对象,属性和值的键值对,如果值中有null,默认拼接is null,可以通过设置忽略null,如果想忽略传入的map中的某个键或值,通过调用Bipredicate方法进行。
查看全部 -
实体传入QueryWrapper作为条件
如果需要like,lt等, 可以用TableField(condition="%s<#{%s}")等来使用。
查看全部 -
通过调用三个参数的方法,在第一个参数加入一个判断,用于判断后面的sql是否启用。
查看全部 -
通过select
其中讲了两个实现,一个直接写上类名
一个首先传入实体超类,之后,传入一个predicate函数,用于排除或者保留
查看全部 -
如果开头是在括号中的判断,则开头通过nested进行条件的联合
如果是要找特定数组下的,用in
如果是要选特定数量,在最后last("limit n")
查看全部 -
or和and中可以加入一个匿名函数,说白了就是一个在or内部的条件
查看全部 -
apply(sql,prams)
inSql("字段",sql子查询)
查看全部 -
两种方式进行条件构造器的构建:
QueryWrapper<实体>
Wrappers.<实体>query()
查看全部 -
selectByid
selectByIds Arrays.asList()
selectByMap 其中的键为列名
查看全部
举报