博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mybatis动态插入数据(使用trim标签)
阅读量:6696 次
发布时间:2019-06-25

本文共 1808 字,大约阅读时间需要 6 分钟。

Mybatis动态插入数据(使用trim标签)

有时我们控制同一张表,但传入的参数不固定,操作表的字段不固定,就要用到mybatis动态插入。.xml如下:

insert cx_customer_message (ID,MEMBERID,
MESSAGEE_CLASSIFY,
MESSAGE_CODE,
MESSAGE_CONTENT
) values ( #{id, jdbcType=VARCHAR}, #{memberId, jdbcType=VARCHAR},
#{messageClassify, jdbcType=VARCHAR},
#{messageCode, jdbcType=VARCHAR},
#{messageContent, jdbcType=VARCHAR}
)

问题来了,当messageClassify !=null,但messageCode 和messageContent 为空时,会多出来逗号,以至于mybatis报错。正确的用法如下.xml:

insert cx_customer_message
ID,MEMBERID,
MESSAGEE_CLASSIFY,
MESSAGE_CODE,
MESSAGE_CONTENT,
#{id, jdbcType=VARCHAR}, #{memberId, jdbcType=VARCHAR},
#{messageClassify, jdbcType=VARCHAR},
#{messageCode, jdbcType=VARCHAR},
#{messageContent, jdbcType=VARCHAR},

trim标签的属性

  1. prefix:前缀覆盖并增加其内容。也就是给中的sql语句加上前缀;
  2. suffix:后缀覆盖并增加其内容。给包裹的sql语句加上后缀;
  3. prefixOverrides:前缀判断的条件。取消指定的前缀,如where;
  4. suffixOverrides:后缀判断的条件。取消指定的后缀,如and | or.,逗号等。

转载地址:http://cbvoo.baihongyu.com/

你可能感兴趣的文章
AIX HACMP集群切换测试实际案例解析
查看>>
使用github管理Eclipse分布式项目开发
查看>>
搭建Spring MVC 4开发环境八步走
查看>>
Photoshop绘制植物大战僵尸中的食人花
查看>>
入行后第二份工作的一些感悟
查看>>
Windows PowerShell:(2)基本操作
查看>>
Lync Server 2010标准版系列PART6:启用Lync
查看>>
IT绩效管理消除IT与业务之间的隔阂
查看>>
创建单IP的***网络
查看>>
服务器最小化安装后的优化脚本
查看>>
SCCM2012 R2集成WSUS服务器-4:部署软件更新组
查看>>
关于 Virtual SAN/VSAN 的常见问题解答
查看>>
揭秘8大自媒体平台注册方法,通过率百分之九十
查看>>
技术和赚钱真的冲突吗?
查看>>
  SEO的十种赚钱方式
查看>>
Exchange企业实战技巧(26)在Outlook中打开多个邮箱
查看>>
3C趋势价值对云计算发展的驱动作用
查看>>
职场有影帝出没,屌丝们请当心!
查看>>
Xen Desktop测试报告
查看>>
Lync与Exchange 2013 UM集成:Lync Server配置
查看>>