Mybatis查询时,区分大小写操作
作者:旧单车 发布时间:2021-08-11 14:10:54
标签:Mybatis,查询,大小写
登陆的时候,发现输入账号的不同大小写竟然能够登陆。
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)这样的字段进行去区分
来源:https://blog.csdn.net/weixin_43001280/article/details/82802308
0
投稿
猜你喜欢
- 项目描述: springboot+springcloud+zookeeper+eureka+maven;为多模块多module的分布式架构;
- 一、前言 高斯混合模型(Gaussian Mixture Model)简称GMM,是一种业界广泛使用的聚类算法。它是多个高斯分布函
- 1.会话会话: 用户打开了一个浏览器,点击了很多超链接,访问多个web次元,关闭浏览器,这个过程可以称之为会话有状态会话: 带有访问记录的会
- P代表(Profiles配置文件)在<profiles>指定的<id>中,可以通过-P进行传递或者赋值。假如pom.
- 本文实例讲述了C#从DataTable获取数据的方法。分享给大家供大家参考。具体如下:通过通用类,返回一个DataTable,要想显示每个单
- 在对类访问使用时,常用到的有访问类的成员、方法。实例化在对类进行访问时,需要将类进行实例化。并产生一个对象。可以使用关键字new来实现。由于
- 上来就给点干货吧利用脚本,一键设置java环境变量(默认安装路径)@echo offcolor 0aecho.---------------
- 简介在实现登录功能时,一般为了安全都会设置验证码登录,为了防止某个用户用特定的程序暴力破解方式进行不断的尝试登录。常见验证码分为图片验证码和
- 前言CountDownLatch和CyclicBarrier两个同为java并发编程的重要工具类,它们在诸多多线程并发或并行场景中得到了广泛
- 简介官方API文档Scaffold的of方法说明有说明调用Scaffold.of方法是在Scallfold的子组件的Build方法中,也就是
- 1、错误的解决方案1.1、 先更新数据库,再删除缓存若数据库更新成功,删除缓存操作失败,则此后读到的都是缓存中过期的数据,造成不一致问题。1
- 本文实例为大家分享了C# picturebox实现图像拖拽和缩放的具体代码,供大家参考,具体内容如下1.核心步骤:①新建Point类型全局变
- 1. 抽象类是什么️给大家上一篇小作文,看完这个,你就理解了什么叫做抽象类在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不
- 目录简介普通邮件导入javax.mail依赖Spring配置类邮件配置:mail.properties测试基于thymeleaf模版的邮件导
- git忽略的原理:git设置本地忽略必须保证git的远程仓库分支上没有这个要忽略的文件,如果远程分支上存在这个文件,本地在设置ignore
- 本文实例讲述了Java使用JDBC连接postgresql数据库。分享给大家供大家参考,具体如下:package tool;import j
- 1、普通用户与系统管理员用户的权限要有严格的区分。如果一个普通用户在使用查询语句中嵌入另一个Drop Table语句,那么是否允许
- 本文实例为大家分享了java封装前端查询条件的具体代码,供大家参考,具体内容如下import hengyi.oa.mobile.except
- 本文介绍的是关于Mybatis中用OGNL表达式处理动态sql的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍:常用的Mybat
- JSONObject 与 JSONArray区别JSONObject:{"area": "武汉",&