mybatis中的一个异常:org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to
来源:互联网 发布:索尼手机设置4g网络 编辑:程序博客网 时间:2024/06/08 09:33
1、错误描述
16-Nov-2017 19:09:58.129 严重 [http-nio-8080-exec-16] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [springmvc] in context with path [] threw exception [Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2] with root cause org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:81)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:433)at com.sun.proxy.$Proxy78.selectOne(Unknown Source)at org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:166)at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:82)at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)at com.sun.proxy.$Proxy91.getCarInfoNameID(Unknown Source)at com.zking.controller.ClUseCarRecordController.addClUseCarRecord(ClUseCarRecordController.java:168)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:474)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:495)at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:767)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1347)at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)at java.lang.Thread.run(Thread.java:745)
2、错误原因
由错误提示可知,查询的结果是期望一条记录或者为空,但是返回的记过有2条,也就是说你的sql查询结果返回多条了
3、解决办法
(1)检查Mybatis配置文件中返回的结果类型与Java中返回类型是否一致
(2)检查传递参数的个数(3)检查数据库数据是否正确
(4)检查映射SQL中返回resultType 或resultMap,接口里的返回类型
(5)select语句加上limit 1
(6)......
4、博主解决办法:
一.检查
①.实体类配置文件
②.dao层
③.Controller
④.数据库数据
二.解决
博主的方式比较简单粗暴,直接删除数据库中相同数据中的一条数据,嗯,bug解决了。
然后,还有一种方法是controller和dao层返回类型改为List<ClCarInfo>。
最后,欢迎大家前来交流( ̄▽ ̄)~*
阅读全文
0 0
- mybatis中的一个异常:org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to
- Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be
- org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned b
- org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned b
- Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be
- org.apache.ibatis.exceptions.TooManyResultsException:
- Mybatis 中Expected one result (or null) to be returned by selectOne(), but found: 4
- Mybatis 中Expected one result (or null) to be returned by selectOne(), but found: 5
- mybatis报错:Expected one result (or null) to be returned by selectOne(), but found: 20
- 关于Expected one result (or null) to be returned by selectOne(), but found: 3。。。。异常
- Expected one result (or null) to be returned by selectOne()
- 【mybatis】【org.apache.ibatis.exceptions.PersistenceException】由${}引起的异常
- 当Mybatis+sql遇到Expected one result (or null) to be returned by selectOne(), but found: 2时
- Mybatis 返回类型问题 Expected one result (or null) to be returned by selectOne(), but found: 15
- MyBatis org.apache.ibatis.exceptions.PersistenceException NoSuchMethodException
- Mybatis-org.apache.ibatis.exceptions.PersistenceException
- 异常:org.apache.ibatis.exceptions.PersistenceException:
- Expected one result (or null) to be returned by selectOne(), but found: 2问题完美解决
- J
- 网络状态的判断
- 坚持后的美好
- Fragment隐藏显示与DrawerLayout侧拉 Banner与PullToRefreshListView 和 Banner与xlistview分类加载数据
- 区间素数筛
- mybatis中的一个异常:org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to
- 淘宝咸鱼APP宝贝数据采集工具软件原理
- 基本数据类型分析
- 电热管结构特性
- C语言基础(笔记)
- 结构体,关键字
- 今天是当年的第几天——用javascript(js)编写
- Bitmap二次采样
- java继承与多态