mybatis
打分几楼MOTO
这个作者很懒,什么都没留下…
展开
-
mybatis动态sql之trim用法
trim标签有四个属性使用trim标签去除多余的and关键字 使用trim标签结合case when实现批量更新Demo1Demo2原创 2022-07-11 11:17:28 · 2760 阅读 · 0 评论 -
mybatis-返回参数用Map接收
使用map接收mybatis的返回值,通常为Map<String,Object>或者List<Map<String,Object>>key是表字段(类型是String),value是表字段值(类型是Object) 查询出来的一行数据会被写到一个Map里面,如果查询出来多行数据,需要用List<Map<String,Object>> 取里面的数值 //查询出来的一行数据会被写到一个Map里面//dao:RANK为mysql里面的关..原创 2022-02-06 18:16:30 · 7815 阅读 · 0 评论 -
Mybatis动态sql之@provider使用
目录1.简单介绍2.@SelectProvider3.@InsertProvider4.@UpdateProvider5.@DeleteProvider6.参数传递问题1.简单介绍 @provider包括@SelectProvider,@InsertProvider,@UpdateProvider,@DeleteProvider 主要有两个参数: type:sql类的Class对象(写动态的sql的类的类名) method:类中该方法名原创 2022-01-20 14:52:18 · 2510 阅读 · 1 评论 -
mybatis中@results注解使用
目录用法一用法二用法三@One和@Many使用传递一个参数传递map类型 传递多个参数a方法中传入一个带查询参数x,但是a方法的查询结果中不包含参数x,而子查询里也需要参数x,如何在子查询b中带入参数x用法二 当@results这段代码需要在多个方法中用到时,为了提高代码复用性,可以为@results指定id,然后使用@resultMap注解来复用这段代码用法三 @Result中one和many用于关联查询。比如上面列子中提到的Group类中包含属性List u...原创 2022-01-20 11:52:40 · 5854 阅读 · 0 评论 -
MyBatis动态sql之choose(when、otherwise)用法
if标签是与(and)的关系,只要test中的表达式为 true,就会执行 if 标签中的条件;而 choose 是或(or)的关系,并不想应用所有的条件,而只是想从多个选项中选择一个。choose标签是按顺序判断其内部when标签中的test条件出否成立,如果有一个成立,则 choose 结束。当 choose 中所有 when 的条件都不满则时,则执行 otherwise 中的sql。类似于Java 的 switch 语句,choose 为 switch,when 为...原创 2022-01-20 10:16:07 · 5340 阅读 · 0 评论 -
MyBatis动态sql之set用法 ( 更新语句)
当 update 语句中没有使用 if 标签时,如果有一个参数为 null,都会导致错误。使用set标签可以将动态的配置 SET 关键字,并剔除追加到条件末尾的任何不相关的逗号。使用 if+set 标签修改后,如果某项为 null 则不进行更新,而是保持数据库原值。如下示例:@update("<script>"+ " update Student "+ " <set> "+ " <if te...原创 2022-01-19 22:03:49 · 2802 阅读 · 0 评论 -
Mybatis动态sql之where用法
where 主要是用来简化 sql 语句中 where 条件判断,自动地处理 AND/OR 条件,and ,or等关键字可以多不可以没有,多了会自动去掉,少了会报错。where用来包含多个if的,当多个if有一个成立的时候where会自动增加一个where关键字,并去掉if中多余的and,or等使用where标签,在有查询条件中,可以自动添加上where子句;没有查询条件时,不会添加where子句。需值得注意的是:第一个if标签中的sql片段。可以不包含a...原创 2022-01-19 21:45:14 · 5098 阅读 · 0 评论 -
MyBatis动态sql之foreach用法
collectionforeach的对象,作为入参,对象为list、array时,collection属性值分别默认用"list"、"array"代替,Map对象没有默认的属性值。separator元素之间的分隔符,类比在IN()的时候,separator=",",最终所有遍历的元素将会以设定的(,)逗号符号隔开,该参数为可选项;open遍历集合时的开始符号,通常与close=")"搭配使用。close遍历集合时的结束符号,通常与open="("搭配使用,该参数为可选项;......原创 2022-01-19 21:17:46 · 3512 阅读 · 0 评论