mybatis:

<set>
<if test="obj.buyerId != null">
buyerId = #{obj.buyerId},
</if>
<if test="obj.country != null and obj.country.length() > 0">
country = #{obj.country},
</if>
<if test="obj.province != null and obj.province.length() > 0">
province = #{province},
</if>
<if test="obj.city != null and obj.city.length() > 0">
city = #{obj.city},
</if>
<if test="obj.district != null and obj.district.length() > 0">
district = #{obj.district},
</if>
<if test="obj.detailAddress != null and obj.detailAddress.length() > 0">
detail_address = #{obj.detailAddress},
</if>
<if test="obj.country != null and obj.country.length() > 0">
country = #{obj.country},
</if>
<if test="obj.isDefault != null and obj.isDefault.length() > 0">
isDefault = #{obj.isDefault}
</if>
</set>

ibatis:

<dynamic prepend="SET">
<isNotEmpty prepend="," property="obj.name">
name = #obj.name#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.nick">
nick = #obj.nick#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.lastLoginDate">
last_login_date = #obj.lastLoginDate#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.weixinUnionId">
weixin_union_id = #obj.weixinUnionId#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.email">
email = #obj.email#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.qq">
qq = #obj.qq#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.weixinOpenId">
weixin_open_id = #obj.weixinOpenId#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.weixinId">
weixin_id = #obj.weixinId#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.sessionKey">
session_key = #obj.sessionKey#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.mobile">
mobile = #obj.mobile#
</isNotEmpty>
<isNotNull prepend="," property="obj.sex">
sex = #obj.sex#
</isNotNull>
<isNotEmpty prepend="," property="obj.avatar">
avatar = #obj.avatar#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.sellerId">
seller_id = #obj.sellerId#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.shopId">
shop_id = #obj.shopId#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.mpId">
mp_id = #obj.mpId#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.city">
city = #obj.city#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.province">
province = #obj.province#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.language">
language = #obj.language#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.country">
country = #obj.country#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.phoneNumber">
phone_number = #obj.phoneNumber#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.countryCode">
country_code = #obj.countryCode#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.memberType">
member_type = #obj.memberType#
</isNotEmpty>
<isNotEmpty prepend="," property="obj.remark">
remark = #obj.remark#
</isNotEmpty>
</dynamic>

动态set mybatis与ibatis的写法的更多相关文章

  1. 动态insert mybatis与ibatis

    mybatis: <insert id="insert" parameterType="hashMap"> INSERT INTO item < ...

  2. 开源顶级持久层框架——mybatis(ibatis)——day01

    mybatis-day01     1.对原生态jdbc程序中的问题总结         1.1环境             java环境:jdk             eclipse:indigo ...

  3. mybatis、ibatis 和spring集成

    mybatis是ibatis的升级版,spring也有自带mybatis的orm.所以,搭建ibatis的框架也会有多种方式(我这里mybatis是3.0的,ibatis是2.3的,spring是3. ...

  4. mybatis和ibatis区别

     ibatis本是apache的一个开源项目,2010年这个项目由apache software foundation 迁移到了google code,并且改名为mybatis.  1.Mybat ...

  5. Mybatis与Ibatis的区别

    Mybatis与Ibatis的区别: 1.Mybatis实现了接口绑定,使用更加方便 在ibatis2.x中我们需要在DAO的实现类中指定具体对应哪个xml映射文件, 而Mybatis实现了DAO接口 ...

  6. MyBatis 与Ibatis 区别

    Ibatis 是 Mybatis 的前身,两者都是优秀的持久层框架. 区别: 1.mybatis 实现接口绑定,不需要具体接口实现类.但是需要在xml文件中 的 namespace 绑定具体的接口. ...

  7. JavaORM框架之Mybatis篇(Ibatis)

    欢迎查看Java开发之上帝之眼系列教程,如果您正在为Java后端庞大的体系所困扰,如果您正在为各种繁出不穷的技术和各种框架所迷茫,那么本系列文章将带您窥探Java庞大的体系.本系列教程希望您能站在上帝 ...

  8. 关于MyBatis的两种写法

    刚接触MyBatis是在Jike的视频中学习的,但是之后又发现和项目中的MyBatis的用法不太一致.上网找了好多资料,发现网上的教程分为两种写法: 第一种,是jike视频中的写法,写好map.xml ...

  9. Mybatis与Ibatis比较

    随着开发团队转投Google Code旗下,ibatis3.x正式更名为Mybatis  虽然从正式版发布至今也有近一年时间,官方也非常友好的提供了中文版的使用手册,不过相信很多人还在项目中使用iba ...

随机推荐

  1. MSIL实用指南-生成while语句

    本篇讲解怎样生成while语句.while语句是编程语言中很重要的循环语句,它的结构是while(<表达式>) <语句或语句块> 当表达式的结果为true时就一直执行语句或语句 ...

  2. JavaScript算法模式——动态规划和贪心算法

    动态规划 动态规划(Dynamic Programming,DP)是一种将复杂问题分解成更小的子问题来解决的优化算法.下面有一些用动态规划来解决实际问题的算法: 最少硬币找零 给定一组硬币的面额,以及 ...

  3. Mac下搭建go和beego开发环境

     go安装 首先到golang的官网下载 直接双击安装包,安装 ,下一步,下一步....完成既可 验证安装是否成功 打开终端执行 输出 go version go1.11.5 darwin/amd64 ...

  4. NLP(十) 主题识别

    主题识别 是发现输入文本集合中存在的主题的过程 LDA算法,即狄利克雷分布算法 from nltk.tokenize import RegexpTokenizer from nltk.corpus i ...

  5. WebApi使用OAuth2认证

    本篇文章实现了四种认证方式中的客户端模式和密码模式,未实现token持久化 未介绍OAuth2的相关概念,全部是干货,可自己在网上搜索OAuth2相关知识,在这不做过多阐述 一.引用OAuth2所需的 ...

  6. codeforces 869 E. The Untended Antiquity(树状数组)

    题目链接:http://codeforces.com/contest/869/problem/E 题解:这题是挺好想到solution的但是不太好写,由于题目的特殊要求每个矩形不会重贴所以只要这两个点 ...

  7. 【Spring】 IOC Base

    一.关于容器 1. ApplicationContext和BeanFactory 2. 配置文件 XML方式 Java-configuration 方式 @Configuration 3. 初始化容器 ...

  8. Kafka源码分析及图解原理之Producer端

    一.前言 任何消息队列都是万变不离其宗都是3部分,消息生产者(Producer).消息消费者(Consumer)和服务载体(在Kafka中用Broker指代).那么本篇主要讲解Producer端,会有 ...

  9. Java基础(一)-- Java对字符串操作大全

    一.Java字符串类基本概念 在JAVA语言中,字符串数据实际上由String类所实现的.Java字符串类分为两类:一类是在程序中不会被改变长度的不变字符串:二类是在程序中会被改变长度的可变字符串.J ...

  10. vsnprint参数和意义

    _vsnprintf(char *str, size_t size, const char *format, va_list ap) char *str [out],把生成的格式化的字符串存放在这里. ...