<select id="queryDataRefId" parameterType="map" resultType="my.entity.News">
select news_id, news_content, news_time from my_news where news_id > ${index}
order by ${order}
</select><select id="queryDataRefId" parameterType="map" resultType="my.entity.News">
select news_id, news_content, news_time from my_news where news_id > #{index}
order by #{order}
</select>java如下
Map<String, Object> map = new HashMap<>();
map.put("index", 20);
map.put("order", "news_id");
List<News> list = session.selectList("queryDataRefId", map);
for (News news : list) {
System.out.println(news);
}
我写了一个实体类,再用MyBatis框架, 在写这个sql的时候,发现了问题,这两种方式,为什么第一种就会按照我的要求走,而走后边这种预编译参数的时候,就不按我的where和order by 走呢?
select news_id, news_content, news_time from my_news where news_id > ${index}
order by ${order}
</select><select id="queryDataRefId" parameterType="map" resultType="my.entity.News">
select news_id, news_content, news_time from my_news where news_id > #{index}
order by #{order}
</select>java如下
Map<String, Object> map = new HashMap<>();
map.put("index", 20);
map.put("order", "news_id");
List<News> list = session.selectList("queryDataRefId", map);
for (News news : list) {
System.out.println(news);
}
我写了一个实体类,再用MyBatis框架, 在写这个sql的时候,发现了问题,这两种方式,为什么第一种就会按照我的要求走,而走后边这种预编译参数的时候,就不按我的where和order by 走呢?
解决方案 »
- 数据缓存的方法?
- struts2 如何通过url得到action类路径
- eclipse 中的缩进格式问题
- org.apache.catalina.core.StandardContext start 错误
- 我在使用jbuilder的时候出现了这个问题 在线等!
- servlet:"action" failed to preloaded on startup in web application????
- 大虾给指点下。。。
- <<<<<<<<<<<<<<<<**********有没有比较好的JNID例子或者教学**************>>>>>>>>>>>>>
- 请问能用java做个画图软件吗?
- SSM 框架中 如何自动的将系统时间写入数据库的时间字段里。
- 一个在用spring data jpa中遇到的一个非常奇怪的错,求大神解答,跪谢!
- Spring 框架的优点
#{param} 会在参数两边添加引号
举个我曾经碰到的栗子:--param = 1,2,3,4,5
select *
from user
where 1=1
and user_id in (${param})上面的写法就是正确的,解析成SQL就是 user_id in (1,2,3,4,5)
下面这个就是错的,会被解析成 user_id in ("1,2,3,4,5"):--param = 1,2,3,4,5
select *
from user
where 1=1
and user_id in (#{param})