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

  • 增值税发票阅读器干什么用的
  • 一键报税财务软件破解版
  • 借款合同印花税怎么申报
  • 年初存货跌价准备余额是上年末结转的吗
  • 小规模纳税人不开票收入怎么报增值税
  • 公司端午礼盒
  • 吸收合并和新设合并
  • 年末暂估下年怎么入账
  • 城建税可以不交吗
  • 损益类科目是否可以转出
  • 哪些属于不动产权
  • 合并报表长期股权投资怎么算
  • 出口货物退回需要进口税吗
  • 双倍余额递减法考虑净残值吗
  • 共同开发无形资产怎么算
  • 食堂买的固定资产怎么帐务处理
  • 行政诉讼的适用情况
  • 出口退免税收汇相关业务
  • 7.1增值税普通发票怎么开?
  • 收购全资子公司的账务处理
  • 银行手续费做账漏掉
  • 公司单位员工餐费怎么算
  • 园林工程的范围包括哪些?
  • mac dash
  • php生成二维码
  • 前端 php
  • 开发商延期交房违法吗
  • 税务自查补税后还有风险吗
  • .net core 开发web
  • 科西嘉岛攻略
  • 水费里的代收费用是什么意思
  • 微信小程序实现文件上传
  • vite2.0 vue
  • php处理并发有哪些技术
  • 借入长期借款的利息
  • 停车场广告收入需要每年缴纳增值税吗?
  • 网上学电脑哪个软件好
  • 深入解读何暮楚
  • mongodb aggregate 性能
  • 月度合并报表与年度合并区别
  • 基本户收到款不入账
  • 以前年度损益调整借贷方向
  • 画完图不给钱怎么办
  • 收购发票如何确认成本
  • 主营业务成本如何设置明细
  • 应交税费应交增值税进项税额在借方
  • 电子承兑汇票是到期日前10天提示承兑吗
  • 出售在建工程的会计分录怎么做
  • 保修的产品还收费吗
  • 政府补贴项目需要审批吗
  • 企业如何开户流程
  • 普票抵扣
  • 重装win8系统后没有声音
  • explorer.exe进程出错
  • 什么是bash命令
  • linux系统的安全机制有哪些
  • vi编辑器是干什么的
  • .sfx.exe是什么文件
  • cocos2dx运行原理
  • jquery的css方法
  • 浅谈特殊儿童的融合教育论文
  • linux中shell命令
  • python该怎么用
  • js实现倒计时60s
  • 最流行的民宿装修设计
  • android.intent.extra.text
  • python的五个特点
  • JavaScript中的math.pi
  • 怎么快速启动win10
  • JavaScript中的数据类型分哪为两大类?
  • 爱加密企业版
  • python enumeration
  • python队列只能一个个读取吗
  • jq动态设置css
  • 代收的款项支付需不需要开发票
  • 加强税务系统党委全面监督工作
  • 深圳小微企业税收优惠政策2023
  • 临时搭建的活动叫什么
  • 河南省地税税务局官网
  • 商品代码是啥
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设