bug场景记录

项目场景:

mapper.xml文件中sql语句执行失败,显示输入的参数数量不对

问题描述

sql 复制代码
 <select id="page" resultType="com.sky.entity.Employee">
        select * from employee
            <where>
                <if test="name != null and name !=''">
                    and name like concat('%','#{name}','%')
                </if>
            </where>
                 order by create_time desc
    </select>

xml文件出错

原因分析:

当name的输入为中文字符串时,例如 "标准" 二字会导致mybatis无法自动注入name

解决方案:

将xml文件中的sql语句修改为

sql 复制代码
 <select id="page" resultType="com.sky.entity.Employee">
        select * from employee
            <where>
                <if test="name != null and name !=''">
                    and name like concat('%',#{name},'%')
                </if>
            </where>
                 order by create_time desc
    </select>

去掉单引号即可

相关推荐
TH_11 分钟前
4、前台界面,表格列名写错
java
没有bug.的程序员23 分钟前
高频IO服务优化实战指南
java·jvm·spring·容器
通往曙光的路上24 分钟前
授权vvvvvv
java·开发语言·windows
Data_agent25 分钟前
京东商品视频API,Python请求示例
java·开发语言·爬虫·python
a努力。29 分钟前
HSBC Java面试被问:CAS如何解决ABA问题
java·开发语言·面试
lang201509281 小时前
深入解析Java资源加载机制
java·开发语言·python
爱笑的眼睛111 小时前
自动机器学习组件的深度解析:超越AutoML框架的底层架构
java·人工智能·python·ai
⑩-2 小时前
简单业务异常类
java
乘风!2 小时前
NSSM启动tomcat部署Java程序
java·服务器·后端·tomcat
BBB努力学习程序设计2 小时前
Java 21虚拟线程与平台线程:JVM层面的深度对比与实现原理
java