欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Mybatis查询时,区分大小写操作

时间:2021-09-23 08:44:57|栏目:JAVA代码|点击:

登陆的时候,发现输入账号的不同大小写竟然能够登陆。

Mybatis查询代码如下

<select id="selectById" parameterType="java.lang.String" resultType="com.deep.web.func.entity.UserData"> 
  select <include refid="sql_columns" /> from <include refid="table_name" /> 
  <where>
   userName=#{userName} 
  </where>
 </select>

通过多次断点查询后,发现是上面的xml文件没写对。

userName=#{userName}

这样写不匹配大小写。

解决办法,加个BINARY

 <select id="selectById" parameterType="java.lang.String" resultType="com.deep.web.func.entity.UserData"> 
  select <include refid="sql_columns" /> from <include refid="table_name" /> 
  <where>
   BINARY userId=#{uid} 
  </where>
 </select>

补充知识:mybatis不区分大小写问题

起因是在java的实体类里定义了两个相同的字段名字只是区分了其中一个字母的大小写,如(cellcode,cellCode)在Myatis的sql语句中进行查询,观看了前台返回数据发现与预想的数据不一样,后来发现是因为mybatis中不区分大小写造成的程序小bug,

在应用中一定要注意在实体类中不能定义类似与(cellcode,cellCode)这样的字段进行去区分

上一篇:Springboot整合分页插件PageHelper步骤解析

栏    目:JAVA代码

下一篇:Spring Cloud Gateway 如何修改HTTP响应信息

本文标题:Mybatis查询时,区分大小写操作

本文地址:http://www.codeinn.net/misctech/176804.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有