ibatis中的order by 参数配置问题

    今天在写项目的时候,碰到了这个问题,调试了半天都没搞定。最后把问题锁定到xml配置文件上:

 

一般配置文件都这么写

<select ...>

select * from table where XXX = #valule# order by #value#

</select>

 

但是由于ibatis在将参数值映射到statement里面时,所以对于 #value# 会解释成 字符串 'value' ,于是我的代码就被解释成

 

select * from table where XXX = 'valule' order by 'value'

 

这样显然不对,所以得换个方法

 

<select ...>select * from table where XXX = #valule# order by $value$</select>

 

用$$来包含order by的参数,就OK了~因为$$内的value不会被解释成'value',而是直接原样翻译。

 

总结:如果要考虑数据类型,用#;若是只考虑字符,则用$.

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值