参考博客:
1、https://blog.csdn.net/elpsycongr00/article/details/79854234
2、http://blog.sina.com.cn/s/blog_1a39e3c4a0102yws1.html
今天要实现一个模糊查询的功能,自己想了想需要使用数据库中的 like %变量值%,这种方法。查阅博客后找到一种简单易实现的办法。分享如下:
mapper.xml中:
<select id="mohuSelect" resultMap="BaseResultMap">
SELECT * FROM oss_ob WHERE ob_name LIKE CONCAT(CONCAT('%', #{bomvalue}), '%');
</select>
CONCAT(A ,B ) 是mysql一个字符拼接函数 ,对于上面的sql语句,先 拼装为 %bomvalue,然后又执行一次concat函数,拼装为%bomvalue%。
maper.java:
List<OssOb> mohuSelect(@Param("bomvalue") String bomvalue);
test:
@Test
public void mohuSelect() {
String bomvalue="明";
List<OssOb> list =ossObMapper.mohuSelect(bomvalue);
for (OssOb p:list) {
System.out.println(p.getObName());
}
}
结果: