位置: IT常识 - 正文

mybatis常用标签(refid、foreach、trim)(mybatis isnotempty标签)

编辑:rootadmin
mybatis常用标签(refid、foreach、trim) 1.问题来源

推荐整理分享mybatis常用标签(refid、foreach、trim)(mybatis isnotempty标签),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mybatis常用标签有哪些,mybatis常用标签有哪些,mybatisforeach标签,mybatisforeach标签,mybatis常用的标签,mybatisbind标签,mybatiswhen标签,mybatiswhen标签,内容如对您有帮助,希望把文章链接给更多的朋友!

在之前查询数据库的时候基本都是使用

select * from student;SELECT name, prod_price FROM products;

但是很多时候我们并不需要查询数据库中的全部字段,直接查全部字段会降低效率,同时很多字段的组合是经常被使用到的,每次都单独写出来很麻烦

2.Mybatis解决 对于上述问题,Mybatis的映射文件中为我们引入了<include refid="Base_Column_List" /> ,意思就是固定几个需要查询的字段,在sql语句中不需要写具体的字段了。具体使用如下:

<sql id="Base_Column_List"> id, username, password, email, phone, question, answer, role, create_time, update_time</sql><select id="selectByUsername" parameterType="java.lang.String" resultMap="BaseResultMap"> select <include refid="Base_Column_List" /> from mall_user where username = #{username,jdbcType=VARCHAR}</select>

2、mybatis动态sql中foreach标签的使用

foreach标签主要用于构建in条件,他可以在sql中对集合进行迭代。如下:

<delete id="deleteBatch"> delete from user where id in<foreach collection="array" item="id" index="index" open="("  close=")" separator=","> #{id} </foreach></delete>

我们假如说参数为----  int[] ids = {1,2,3,4,5}  ----那么打印之后的SQL如下:

delete form user where id in (1,2,3,4,5)释义: collection:collection属性的值有三个分别是list、array、map三种,分别对应的参数类型为:List、数组、map集合,我在上面传的参数为数组,所以值为array

item :表示在迭代过程中每一个元素的别名

index:表示在迭代过程中每次迭代到的位置(下标)

open :前缀

close:后缀

mybatis常用标签(refid、foreach、trim)(mybatis isnotempty标签)

separator:分隔符,表示迭代时每个元素之间以什么分隔

我们通常可以将之用到批量删除、添加等操作中。

相当于mysql里的游标!!!

3、mybatis动态sql中的trim标签的使用

trim标记是一个格式化的标记(format),可以完成set或者是where标记的功能,如下代码:

1、

select * from user<trim prefix="WHERE" prefix override="AND |OR"><if test="name != null and name.length()>0"> AND name= #{name}</if><if test="gender != null and gender.length()>0"> AND gender= #{gender}</if></trim>

假如说name和gender的值都不为null的话打印的SQL为:

select * from user where   #  name = 'xx' and gender = 'xx'

在红色# 标记的地方是不存在第一个and的,上面两个属性的意思如下:

prefix:前缀      

prefixoverride:去掉第一个and或者是or

2、

update user<trim prefix="set" suffix override="," suffix=" where id =#{id} "><if test="name != null and name.length()>0"> name=#{name} ,</if><if test="gender != null and gender.length()>0"> gender=#{gender} , </if></trim>

假如说name和gender的值都不为null的话打印的SQL为:

update user set name='xx' , gender='xx' #  whereid='x'

在红色标记的地方不存在逗号,而且自动加了一个set前缀和where后缀,上面三个属性的意义如下,其中prefix意义如上:

suffixoverride:去掉最后一个逗号(也可以是其他的标记,就像是上面前缀中的and一样)

suffix:后缀

本文链接地址:https://www.jiuchutong.com/zhishi/299686.html 转载请保留说明!

上一篇:【Android源码面试宝典】MMKV从使用到原理分析(二)(android界面源码)

下一篇:html+css+js制作LOL官网,web前端大作业(3个页面+模拟登录+链接)(js怎么制作)

  • 代收代缴个人所得税手续费
  • 收到营业外收入流水账怎么做账
  • 利息按月计提分录
  • 房地产开发票的时间
  • 收到投资款怎么做账
  • 向职工支付职工福利费
  • 复式记账的优点有哪些
  • 已认证未抵扣什么意思
  • 进口设备贴息政策2019
  • 发票有误多交的钱怎么办
  • 其他应收款属于流动资产吗
  • 小规模纳税人网上申报税务操作流程
  • 地方教育费附加计入什么科目
  • 2016年的发票2020年可以认证吗
  • 分公司不独立核算需要开银行账户吗
  • 收入和成本都是真实发生的但是不匹配
  • 辞退员工会计分录
  • 增值税影不影响企业利润
  • 亏损计提递延
  • 原材料退库怎么做凭证
  • 资产处置损益是什么科目
  • 哪些情形需要办理外债审核登记
  • gsicon.exe是什么进程 作用是什么 gsicon进程查询
  • 21年最新cpu
  • 土地增值税的计税依据
  • linux mib
  • 双线服务器
  • 财务管理集权与分权
  • 火星车百家号
  • web前端基本知识
  • linux编译安装php扩展命令
  • 企业所得税扣除限额标准
  • 建筑工程房屋租赁费属于什么费用
  • 销售汇总怎么做分录
  • php对象的概念
  • 微信小程序图片大小如何设置
  • php jquery
  • 金蝶存货核算不能结账,能强制结账吗
  • 小规模如何申报增值税
  • 培训费个人的发票能开吗
  • 上月购进固定资产次月退货已开具红字发票如何入账
  • 冲销去年暂估成本对企业所得税的影响
  • 保险支票托收
  • 小微企业的税收优惠政策2023
  • 增值税纳税申报实训报告
  • 需要做审计有哪些行业
  • 注销退税后又补税了
  • 企业购进货物暂欠货款
  • 负数发票作废后对原发票有影响吗
  • 股权转让的会计资料归谁所有
  • 代扣税是啥
  • 超期应收款管控
  • 支付保证金如何做账务处理
  • 支付个人运费没有发票怎么办
  • 期间费用包括哪三种
  • 收到发票没付款,能打赢官司吗
  • 复式记账法主要有
  • windows7如何设置电脑休眠时间
  • 苹果mac怎么下载英雄联盟
  • samba webui
  • u盘安装centos7安装详细图解
  • 电脑的技巧
  • win10收不到20h2更新
  • windowsxp的设置在哪
  • mac刻录工具
  • Linux系统怎么用梯子
  • app塔防游戏
  • 【Cocso2d-x Lua笔记五】quick中的display
  • android mark
  • log4j 日志文件太大
  • 常用dos命令大全及用法
  • 批处理 判断文件是否存在
  • scrapy爬虫教程
  • [置顶]游戏名:chivalry2
  • JavaScript电子时钟倒计时第二款
  • 有哪些推荐阅读的书
  • android获取屏幕内容
  • 税务局约谈记录
  • 四川税务网上报税
  • 汽车修理厂24小时修理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设