模糊查询:

工作中用到,写三种用法吧

  1. sql中字符串拼接

SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%');

  1. 使用 ${...} 代替 #{...}

SELECT * FROM tableName WHERE name LIKE '%${text}%';

  1. 程序中拼接

    Java

    // or String searchText = "%" + text + "%";

    String searchText = new StringBuilder("%").append(text).append("%").toString();

    parameterMap.put("text", searchText);

    SqlMap.xml

    SELECT * FROM tableName WHERE name LIKE #{text};

异常:

java.lang.IllegalArgumentException: modify is ambiguous in Mapped Statements collection (try using the full name including the namespace, or rename one of the entries) at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:466) at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:349) at org.apache.ibatis.binding.MapperMethod.setupCommandType(MapperMethod.java:137) at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:46) at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:34) at $Proxy10.modify(Unknown Source)

抛出这个异常的原因可能是因为mapper.xml配置文件中<mapper>的namespace属性配置错误造成的,没有根据命名空间的值(全称类名)找到相应映射接口。

如:<mapper namespace="com.xxx.xxx.mapper.TestMapper" >

转载于:https://my.oschina.net/taomac/blog/118041

Mybatis各种模糊查询及#和$区别相关推荐

  1. MyBatis 解决模糊查询包含特殊字符

    第一块:MyBatis 实现模糊查询方式 1.1 sql中字符串拼接 SELECT * FROM 表名 WHERE 字段名 LIKE CONCAT(CONCAT('%', #{参数}), '%'); ...

  2. mybatis like模糊查询_Java自学之mybatis:模糊查询和多条件查询

    学习目的 使用mybatis进行模糊查询:查找category_表中包含cat的记录. 使用mybatis进行多条件查询:查找category_表中id>1,包含cat的记录. Part 1 模 ...

  3. MyBatis实现模糊查询的三种方式

    MyBatis实现模糊查询的三种方式 准备 模糊查询 方式一 方式二 方式三 由于#{}是占位符本身,自带单引号,所以在模糊查询时需要一些技巧. 准备 数据库表 bean 模糊查询 以查询出所有用户名 ...

  4. Mybatis学习记录(四)——Mybatis实现模糊查询的三种方法

    2018.4.8 仅为个人理解 不足之处欢迎指正~ 数据库说明: 我们在之前的数据库中添加三列:sex major class 现有如下记录: Mybatis进行模糊查询: Mybatis进行模糊查询 ...

  5. mysql和oracle模糊查询_oracle模糊查询mysql的区别

    oracle与使用mysql的区别 1.Like模糊查询有字符串拼接 所有用 str1||str2 拼接的字符串都要改成CONCAT(str1,str2) '%'||#{zbmc}||'%'改成CON ...

  6. MyBatis:模糊查询的4种实现方式

    1.根据姓名模糊查询员工信息 1.1.方式一 步骤一:编写配置文件 步骤二:测试 步骤三:分析 此种方式需要在调用处手动的去添加"%"通配符. 1.2.方式二 说明: 使用方式一可 ...

  7. Mybatis的模糊查询写法

    所需的maven依赖 <dependencies><!-- Mybatis核心 --><dependency><groupId>org.mybatis& ...

  8. MyBatis Plus 模糊查询报错, 但是不影响返回结果[解决]

    1 现状 模糊查询报错, 但不影响查询结果 2 报错信息 optimize this sql to a count sql has exception, sql:xxxxxxxxxxxxxxxxxxx ...

  9. MyBatis中模糊查询LIKE的三种方式

    在操作数据库时,查询是最常用的语句,模糊查询也是数据库SQL中使用频率很高的SQL语句,利用MyBatis框架来进行更加灵活的模糊查询,有如下三种方式: (1)直接传参法        直接传参法,就 ...

最新文章

  1. bzoj1002 生成树计数 找规律
  2. vim之好用插件-ctrlp.vim
  3. 简单易懂的 pwnable.kr 第六题[random]Writeupt
  4. easyui中获取getEditor为空情况
  5. GitHub 回滚操作
  6. 用java实现验证码(CAPTCHA)
  7. Linux多线程实践(9) --简单线程池的设计与实现
  8. Navicat for Mysql 新建查询提示文件找不到
  9. 解决maven项目jdbc报错:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
  10. 2017年度中国专利代理十强
  11. js如何监听元素事件是否被移除_js 监听事件的叠加和移除 -
  12. oracle 中EXP、IMP 命令详解
  13. Linux下的进程管理——task_struct
  14. 解决Vscode编辑器不能打开多标签页问题
  15. 给radio添加点击事件
  16. FuelPHP 系列(三) ------ Model 模型
  17. 一入职!就遇到上亿(MySQL)大表的优化....
  18. atitit.技术选型方法总结为什么java就是比.net有前途
  19. 神经网络在游戏中的应用,神经网络控制应用实例
  20. 【伯猫Java教程】网页游戏开发过程——环境搭建

热门文章

  1. 160. 相交链表 golang
  2. linux操作系统之读写锁
  3. java abstractrequest,Java AbstractJackson2HttpMessageConverter類代碼示例
  4. 数据可视化【九】单向数据流交互
  5. 将字符串中的空格用%20替换
  6. CodeForces 1138B暴力+剪枝
  7. lambda 表达式定制操作
  8. Java面试题2020,单击更改以将java安装到其他文件夹
  9. 【大牛系列教学】靠着这份面试题跟答案
  10. matlab dwt 多层分解,利用matlab对图片进行多层小波分解 会的加QQ511607771 加过作图之后积分加倍送...