当前位置: 首页 > news >正文

做公司 网站网站需要服务器

做公司 网站,网站需要服务器,谁家做电商商城网站便宜,php 网站提速今天遇到一个问题 系统线上问题,经常出现这样的问题,刚重启系统时不报错了,可是运行一段时间又会出现。sql已经写了limit 1,mybatis的debug日志也返回total为1,可是却报错返回了1805条数据 乍一看,感觉太不…

今天遇到一个问题

系统线上问题,经常出现这样的问题,刚重启系统时不报错了,可是运行一段时间又会出现。sql已经写了limit 1,mybatis的debug日志也返回total为1,可是却报错返回了1805条数据

74ec03671dc248d6983d0d9d5be45f8e.png d88a90ec814f4316a3aef75be6c1598c.png

 9c6150c3c9494067bc34013b6e01f08e.png

 

乍一看,感觉太不可思议了 ,其实还是被默认的东西给坑到了,也不能说是坑,就是不理解里面的原理,拿来就用,以为是这个功能,其实还有隐藏的内幕在里面。

这个里面的东西就是selectOne方法,这个方法,我们以为的查询方式是这样的:

select code,username,sex,age,birth from t_user where code=#{code} limit 1

但是它里面并没有那么智能,就像它的名字selectOne一样,你想查询一条记录,那么我就帮你查一条记录,如果有多条记录,那么我报错也是合情合理的吧,毕竟你只查一条记录,也没有说要查哪一条是吧。

实际上MyBatis Plus(com.baomidou.mybatisplus.core.mapper.BaseMapper.selectOne)是这样的:

/*** 根据 entity 条件,查询一条记录,现在会根据{@code throwEx}参数判断是否抛出异常,如果为false就直接返回一条数据* <p>查询一条记录,例如 qw.last("limit 1") 限制取一条记录, 注意:多条数据会报异常</p>** @param queryWrapper 实体对象封装操作类(可以为 null)* @param throwEx      boolean 参数,为true如果存在多个结果直接抛出异常*/default T selectOne(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper, boolean throwEx) {List<T> list = this.selectList(queryWrapper);// 抄自 DefaultSqlSession#selectOneint size = list.size();if (size == 1) {return list.get(0);} else if (size > 1) {if (throwEx) {throw new TooManyResultsException("Expected one result (or null) to be returned by selectOne(), but found: " + list.size());}return list.get(0);}return null;}

而MyBatis(org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne)是这样的:

@Overridepublic <T> T selectOne(String statement, Object parameter) {// Popular vote was to return null on 0 results and throw exception on too many.List<T> list = this.selectList(statement, parameter);if (list.size() == 1) {return list.get(0);}if (list.size() > 1) {throw new TooManyResultsException("Expected one result (or null) to be returned by selectOne(), but found: " + list.size());} else {return null;}}

是吧,拿来的东西固然好,但是也要花点时间学习里面的精髓。

 

 问题来源:

java报错:使用mybatis plus查询一个只返回一条数据的sql,却报错返回了1000多条_编程语言-CSDN问答

 

http://www.yayakq.cn/news/279944/

相关文章:

  • 做公司 网站网络营销专业分析
  • 淘宝优惠券网站怎么做天津百度关键词seo
  • 淘宝不允许 网站建设app营销策略都有哪些
  • 做百度网站如何收费沈阳网站排名优化
  • 邯郸移动网站制作wordpress category 自定义
  • 分销网站有哪些温州建校官网
  • 网站设计策划自助建站网站系统
  • 仁怀哪里可以做网站淘宝网站建设特点
  • wordpress 面包屑插件seo高级
  • 江苏盐城建筑公司网站制作app的流程
  • 国外做问卷调查的网站金空间网站
  • 特别好的企业网站程序广东工厂搜索seo
  • 虹口网站建设大庆市建设局网站刘东
  • 周口建设企业网站公司大学生招聘就业网
  • 做企业网站服务常用的软件开发的工具
  • 网站推广的方法及技巧福建进入一级战备
  • 做外贸的网站如何选择服务器建设公司网站大概需要多少钱
  • 花生壳如何做网站搜索优化报价
  • 网站建设是不是可以免费建站北湖区网站建设专业
  • 模板网站修改教程做一个网页的流程目录
  • 解释网站为什么这样做wordpress加载用时
  • 上海网站制作机构wordpress 更改端口
  • 巩义便宜网站建设公司什么是优化产业结构
  • 珠海公司网站制作江北区城乡建设部网站首页
  • 网站建设公司 经营资质中国信用网官网查询入口
  • 企业网站加视频wordpress+主题页脚
  • 公司网站建设深商城式网站具备哪些功能吗
  • 用php做的博客网站九江网站网站建设
  • 大型电商网站开发wordpress 图片压缩插件
  • 郑州知名做网站公司有哪些成都专业网站建设机构