博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis实现模糊查询的三种方法
阅读量:4048 次
发布时间:2019-05-25

本文共 1483 字,大约阅读时间需要 4 分钟。

模糊查询也是数据库SQL中使用频率很高的SQL语句,使用MyBatis来进行更加灵活的模糊查询。

直接传参法

直接传参法,就是将要查询的关键字keyword,在代码中拼接好要查询的格式,如%keyword%,然后直接作为参数传入mapper.xml的映射文件中。在查询前提前拼接好,然后使用Like 模糊查询

public void selectBykeyWord(String keyword) {     String id = "%" + keyword + "%";     String roleType = "%" + keyword + "%";     String roleName = "%" + keyword + "%";     userDao.selectBykeyWord(id,roleName,roleType); }

在Dao层指定各个参数的别名

   

List
selectBykeyWord(@Param("id") String id,@Param("roleName") String roleName,@Param("roleType") String roleType);

 

执行出来的SQL语句:

SELECT    *FROM    t_roleWHERE    role_name LIKE '%why%'OR id LIKE '%why%'OR role_type LIKE '%why%';

CONCAT()函数

MySQL的 CONCAT()函数用于将多个字符串连接成一个字符串,是最重要的mysql函数之一。仅限于MySQL使用

CONCAT(str1,str2,...)

   

List
selectBykeyWord(@Param("keyword") String keyword);

Mybatis的bind

List
selectBykeyWord(@Param("keyword") String keyword);

 

 

转载地址:http://vofci.baihongyu.com/

你可能感兴趣的文章
指导教师的shooow
查看>>
leetcode面试题01.06.字符串压缩,超出时间限制,样例通过31/32
查看>>
机器学习实战、第二章KNN算法详解、AttributeError: ‘dict‘ object has no attribute ‘iteritems‘
查看>>
leetcode 535 TinyURL 的加密与解密 暴力 年轻人不讲武德—shooter7的博客
查看>>
课程设计(毕业设计)—基于机器学习KNN算法手写数字识别系统—计算机专业课程设计(毕业设计)
查看>>
leetcode1792第232场周赛第三题,以及二维数组根据某一列进行排序——优先队列
查看>>
学生网上选课管理系统的设计与实现—计算机类专业课程设计(毕业设计)
查看>>
新建动态web工程项目红叉报错,以及Could not publish server configuration for Tomcat v9.0 Server at localhost.
查看>>
机器学习SVM的车牌识别系统—计算机专业课程设计(毕业设计)
查看>>
leetcode 80. 删除有序数组中的重复项 II
查看>>
课程设计(毕业设计)—学生宿舍管理系统—计算机类专业
查看>>
毕业设计(课程设计)—SpringBoot网上订餐系统的设计与实现—计算机类专业课程设计(毕业设计)
查看>>
毕业设计(课程设计)—个人博客系统(微博)的设计与实现—计算机类专业课程设计(毕业设计)
查看>>
牛客(中兴捧月)—B-切绳子
查看>>
剑指Offer 13.机器人的运动范围——DFS和BFS
查看>>
Java中GUI编程总结—AWT中的Frame容器、panel面板、布局管理
查看>>
剑指offer12.矩阵中的路径—DFS+剪枝
查看>>
Java中GUI编程总结—事件监听、TextField监听、画笔、(鼠标、窗口、键盘)监听
查看>>
Java中GUI编程总结—Swing(窗口、面板、弹窗、标签、按钮、列表、文本框)
查看>>
Java中map容器分别根据键key和值value进行排序的总结
查看>>