org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): .AdminUserService.

2018-08-31 13:57:44.190 INFO 11664 — [nio-8888-exec-2] o.apache.tomcat.util.http.parser.Cookie : A cookie header was received [sysAdmin.company1=SST,sysAdmin.sysType1=Hub; Idea-1c2d522=fbcffa79-2c2a-4413-bae8-987cc663bf91] that contained an invalid cookie. That cookie will be ignored.Note: further occurrences of this error will be logged at DEBUG level.
2018-08-31 13:57:44.196 INFO 11664 — [nio-8888-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring FrameworkServlet ‘dispatcherServlet’
2018-08-31 13:57:44.196 INFO 11664 — [nio-8888-exec-2] o.s.web.servlet.DispatcherServlet : FrameworkServlet ‘dispatcherServlet’: initialization started
2018-08-31 13:57:44.222 INFO 11664 — [nio-8888-exec-2] o.s.web.servlet.DispatcherServlet : FrameworkServlet ‘dispatcherServlet’: initialization completed in 25 ms
2018-08-31 13:57:44.231 DEBUG 11664 — [nio-8888-exec-2] o.s.b.w.s.f.OrderedRequestContextFilter : Bound request context to thread: org.apache.catalina.connector.RequestFacade@2ba20f61
2018-08-31 13:57:44.254 DEBUG 11664 — [nio-8888-exec-2] o.s.b.w.s.f.OrderedRequestContextFilter : Cleared thread-bound request context: org.apache.catalina.connector.RequestFacade@2ba20f61
2018-08-31 13:57:44.256 ERROR 11664 — [nio-8888-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.jvtd.auth.service.AdminUserService.selectByPrimaryKey] with root cause

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.jvtd.auth.service.AdminUserService.selectByPrimaryKey
at org.apache.ibatis.binding.MapperMethodSqlCommand.(MapperMethod.java:227)atorg.apache.ibatis.binding.MapperMethod.(MapperMethod.java:49)atorg.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:65)atorg.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:58)atcom.sun.proxy.SqlCommand.(MapperMethod.java:227)atorg.apache.ibatis.binding.MapperMethod.(MapperMethod.java:49)atorg.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:65)atorg.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:58)atcom.sun.proxy.Proxy73.selectByPrimaryKey(Unknown Source)
at com.jvtd.auth.controller.AdminUserController.page(AdminUserController.java:33)
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:209)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:877)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:783)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:991)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:974)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:866)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:851)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocolConnectionHandler.process(AbstractProtocol.java:790)atorg.apache.tomcat.util.net.NioEndpointConnectionHandler.process(AbstractProtocol.java:790)atorg.apache.tomcat.util.net.NioEndpointSocketProcessor.doRun(NioEndpoint.java:1468)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutorWorker.run(ThreadPoolExecutor.java:624)atorg.apache.tomcat.util.threads.TaskThreadWorker.run(ThreadPoolExecutor.java:624)atorg.apache.tomcat.util.threads.TaskThreadWrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)

2018-08-31 13:57:44.666 DEBUG 11664 — [nio-8888-exec-3] o.s.b.w.s.f.OrderedRequestContextFilter : Bound request context to thread: org.apache.catalina.connector.RequestFacade@2ba20f61
2018-08-31 13:57:44.714 DEBUG 11664 — [nio-8888-exec-3] o.s.b.w.s.f.OrderedRequestContextFilter : Cleared thread-bound request context: org.apache.catalina.connector.RequestFacade@2ba20f61

springboot与mybatis整合的时候报无法找到service中的方法

解决办法

如果service配置没问题的时候,可能是mapper没扫描到,方法找不到
我的问题所在是:
这里写图片描述

我的启动类配置的@MapperScan(“com.jvtd”)

只到com.jvtd,感觉可以扫描到,但是不可以的。

修改为
这里写图片描述

成功解决。给大家提供个思路方向。

欢迎大家加入Java高级架构/互联网(严禁培训机构、广告群,最干净的技术交流微信群):加微信:1083683159,一起交流技术。
微信平台本人收集个大量资源(4000G架构资源),只做分享,欢迎大家关注获取,保证免费,非任何机构
更多精彩请扫码关注微信公众号—— 名称:java版web项目 id :java_project

这里写图片描述

### 解决 `org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)` 错误 当遇到 `org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)` 这一错误时,通常意味着 MyBatis 无法找到指定的 SQL 映射语句。以下是几种常见的解决方案: #### 方法一:确保 Mapper 文件中的 SQL 语句 ID 和 Java 代码中调用的方法名一致 如果 Mapper 接口中的方法名称与对应的 XML 配置文件内的 `<select>` 或其他标签下的 id 属性不匹配,则会触发此异常。因此,应当仔细核对两者之间的命名是否完全相同。 ```xml <!-- UserMapper.xml --> <select id="getUserById" parameterType="int" resultType="com.example.User"> SELECT * FROM users WHERE user_id = #{userId} </select> ``` ```java //UserMapper.java public interface UserMapper { @Select("SELECT * FROM users WHERE user_id = #{userId}") public List<User> getUserById(int userId); } ``` 注意,在上面的例子中,`id` 的值应与接口里的函数签名相吻合[^2]。 #### 方法二:确认资源文件被正确打包至 JAR 中 有时即使路径无误,由于 Maven 构建过程配置不当也可能导致此类问题的发生。可以通过检查项目的 `pom.xml` 来验证是否有如下设置来包含所有的映射器XML文件: ```xml <build> <resources> <!-- 添加 resource 节点用于加载 mapper xml 文件 --> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> <include>**/*.yml</include> <include>**/*.yaml</include> <include>**/*.xml</include> </includes> </resource> </resources> </build> ``` 此外,还需保证这些文件确实存在于预期的位置,并且在编译后的 jar 包内可以正常访问[^4]。 #### 方法三:升级依赖版本以兼容更高版本框架 对于某些特定情况下,比如使用较新的Spring Boot 版本而MyBatis Plus尚未提供相应支持的时候,可能会因为API变更等原因引发该类异常。此时建议查看官方文档或社区反馈了解是否存在已知的问题以及相应的修复措施;必要时考虑更新相关库到最新稳定版以便获得更好的适配性和性能优化[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值