码迷,mamicode.com
首页 > 其他好文 > 详细

关于Mybatis的一点小记录

时间:2018-04-29 01:28:56      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:select   test   _id   result   赋值   join   记录   name   复杂数据类型   

1.Mybatis的parameterType有两个比较常用的,一个是类的对象,还有一个就是Map,然后取值的方法也很简单:

基本数据类型:#{参数} 获取参数中的值

复杂数据类型:#{属性名} ,map中则是#{key}

2.这里就提一下关于#{}和${},前者是动态解析 时候,就理解成把sql里的这个位置变成 预编译的 ? ,后者就有点像字符串的赋值粘贴,就预编译前的sql语句已经不包含变量了,已经完全是常量了。

然后这里要记录的是,一个和排序有关的 sql语句:

这里我用的是MyBatis:

<select id="selectList" parameterType="java.util.Map" resultMap="EditionMap">
        SELECT te.id, te.e_edition_time, tu.u_name, te.e_notes 
        FROM t_edition AS te 
        LEFT JOIN 
        t_user AS tu 
        ON te.e_edition_setter_id = tu.id 
        WHERE 1=1
        <if test="eTime != null and eTime.trim() != ‘‘">
            and e_edition_time like CONCAT(‘%‘,#{eTime,jdbcType=TIMESTAMP},‘%‘)
        </if>
        ORDER BY ${sidx} ${order}
</select>

最后的ORDER这里,一开始用的是  #{}一直不行,后面换成 $就可以了,总之以后order By 这种后面跟的是固定的字符串的就用 ${}吧,当然其他的还是用#{}好处多一点!

关于Mybatis的一点小记录

标签:select   test   _id   result   赋值   join   记录   name   复杂数据类型   

原文地址:https://www.cnblogs.com/wangshen31/p/8970034.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!