我在做的项目中用mybatis从数据库中查询数据,但是查询条件是可以选择的。
如:select * from table where id>100;
我想把“id>100"这个查询条件变成动态的。以一个string的值拼接上去,
以后使用时就可以动态的改变查询条件了。
("id<100" , "id=100”......)
这样可以实现吗?
求大神协助
好像是不能解决我的问题呢
可以,http://blog.csdn.net/startgala/article/details/52458917
<if test="id != null">
and id = #{id}
</if>
使用sqlprovider自定义查询sql
用 $$ 包起来,mybatis就会拼接,比如 想 id>100 了,就在java中 num= ' > 100 ' 在mapper里写,id $num$
是可以的以你的列子来说 select * from table where id>100;
where 部分可以这样设计
select * from table
#{condition}
这里的condition是属性名 实体中必须有 并且提供set get 方法 然后你查的时候在controller层 给实体set Condition("id>100");或者setCondition("name='小明' ");
说的比较乱 希望楼主能看懂
或者用4楼的方法