位置: 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怎么制作)

  • 个税必须每个人交吗
  • 生产领用周转材料
  • 月末一般无余额的有
  • 报税成本费用怎么填
  • 款已付未收到发票怎么开
  • 普通增值税发票税号
  • 利润表中的其他综合收益
  • 应交城建税和教育费附加计算分录
  • 企业承担的法律责任有哪些保险
  • 汇算清缴需要准备哪些数据
  • 全额计提坏账符合的条件
  • 公司之间借钱不还违法吗
  • 工会筹备金税率
  • 通用机打发票现在还有吗
  • 买车交税怎么算价格
  • 加油票不打公司会怎么样
  • 小规模纳税人未开票收入如何做账
  • 销售自建的不动产如何缴纳增值税
  • 公司将自有车辆对外出租
  • 普票需要缴纳印花税吗
  • 实收资本未到位借款利息可以税前扣除吗
  • 差额征税做账分录
  • 高新加计扣除怎么做账
  • 个人车辆租给公司有什么后果
  • 速动比率的合理范围
  • 公司之间可以借款吗怎么做账
  • 进项税留抵期限
  • 银行退回手续费的账务处理
  • 开机自动连接宽带怎么设置w11
  • win10开始菜单磁贴设置
  • 前端页面出现乱码
  • 员工的医药费
  • 银行公户转账需要带什么
  • 金融保险业的营业税率为
  • 增资的会计处理方法
  • 莫纳皮拉
  • 预缴季度企业所得税分录
  • 独立核算的分公司的账务处理
  • 最通俗易懂的电动力学教材
  • 汽车4s店一般会摆放什么小零食
  • carplcy车载有什么用
  • 进口设备退税如何计算
  • 帝国cms怎么安装不了
  • 项目建设期算不算折旧
  • 个人所得缴税租金怎么算
  • 进口货物如何支付外汇
  • 法人向公司账户打款合法吗
  • 无形资产加计扣除怎么算举例
  • 工会经费是按应付职工薪酬贷方计提吗
  • 失控发票要转出成本吗
  • 维修费成本怎么结转
  • 业务招待费纳税筹划
  • 从公账提取备用金到个人账户怎么做会计分录
  • 地方水利建设基金怎么计算
  • 国税地税合并的时间
  • sql merge函数
  • Mysql version can not be less than 4.1 出错解决办法
  • ubuntu怎么切换到桌面
  • win10收不到20h2更新
  • windows mobile
  • win7怎么开不了机
  • 如何找?
  • win7系统连不了蓝牙
  • linux小技巧
  • android-3
  • Node.js中的事件循环是什么样的
  • js日历插件日期选择器
  • 在javascript中如何定义并调用函数
  • js md5加密方法
  • Nodejs+express+ejs简单使用实例代码
  • android studio快捷键补全
  • shell eval用法
  • 安卓状态栏宽度
  • jquery选择父级元素
  • python3整除
  • javascript引用值
  • 残疾人创业有税收什么优惠政策
  • 山西国税电子税务局电话
  • 北京地方税务局李宗定
  • 合肥报税网站
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设