Mybatis报错“Invalid bound statement”,如何快速定位到调用delete语句的代码?
技术百科
心靈之曲
发布时间:2024-12-01
浏览: 次 如何通过提示定位到调用 delete 的代码?
在本例中,控制台输出指出了一个 invalid bound statement (not found) 异常,它表明 mybatis 找不到名为 delete 的绑定语句。
定位调用 delete 的代码:
异常信息中最有用的部分是:
at com.mooc.house.biz.service.mailservice$1.onremoval(mailservice.java:34)
这表明 delete 正在由 mailservice.java 中的 onremoval 方法调用。
分析代码:
mailservice.java 中的 enable 方法使用了 guava 的缓存,并指定了在移除缓存项时调用 onremoval 的移除侦听器。
private final Cacheregis terCache = CacheBuilder.newBuilder() .maximumSize(100) .expireAfterAccess(15, TimeUnit.MINUTES) .removalListener(new RemovalListener
() { @Override public void onRemoval(RemovalNotification notification) { userMapper.delete(notification.getValue()); } }) .build();
当缓存项被移除时,移除侦听器回调 usermapper.delete(notification.getvalue()),这会删除与该缓存项关联的记录。
因此,在你的情况下,似乎是 registercache.invalidate(key) 使缓存无效并导致 onremoval 被调用,最终触发了对 usermapper.delete 的调用,从而删除了用户记录。
# ai
# 使用了
# 移除
# 找不到
# 情况下
# 绑定
# 这会
# 与该
# Java
# access
# 回调
# delete
# 本例
# 似乎是
# guava
# mybatis
相关栏目:
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
AI推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
SEO优化<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
技术百科<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
谷歌推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
百度推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
网络营销<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
案例网站<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
精选文章<?muma echo $count; ?>
】
相关推荐
- Linux怎么查找死循环进程_Linux系统负载分
- 如何使用正则表达式精确匹配最多含一个换行符的 st
- Win11怎么开启自动HDR画质_Windows1
- Win11怎么设置桌面图标间距_Windows11
- Python字符串处理进阶_切片方法解析【指导】
- PhpStorm怎么调试PHP代码_PhpStor
- Win10如何更改电脑休眠时间_Windows10
- Win10如何更改网络连接_Windows10以太
- C++如何使用std::transform批量处理
- Win11系统更新后黑屏怎么办 Win11更新黑屏
- 如何使用Golang benchmark测量函数延
- Windows10系统怎么查看设备管理器_Win1
- Windows7怎么找回经典开始菜单_Window
- Win11怎么修改DNS服务器 Win11设置DN
- Windows如何拦截腾讯视频广告_Windows
- Windows10怎样设置家长控制_Windows
- 如何使用Golang实现微服务事件驱动_使用消息总
- 如何在 Go 中调用动态链接库(.so)中的函数
- mac怎么打开终端_MAC终端Terminal使用
- Windows系统时间服务错误_W32Time服务
- Linux如何安装Tomcat应用服务器_Linu
- Win11怎么设置默认PDF阅读器 Win11修改
- 如何在Golang中捕获结构体方法错误_Golan
- php本地部署后session无法保存_sessi
- Mac如何与安卓手机传文件_Mac和Android
- 如何在网页无标准表格标签时高效提取结构化数据
- php怎么操作Redis_Redis扩展连接与基本
- Win11怎么设置组合键快捷方式_Windows1
- VSC怎样用终端运行PHP_命令行执行脚本的步骤【
- 如何在 PHP 单元测试中正确模拟带方法的图像处理
- Win11时间格式怎么改成12小时制 Win11时
- Win11相机打不开提示错误怎么修_相机权限开启与
- 如何处理“XML格式不正确”错误 常见XML we
- Win11如何设置自动关机 Win11定时关机命令
- Win11怎么关闭通知消息_屏蔽Windows 1
- Win11怎么关闭小组件_Win11禁用任务栏天气
- Win11怎么禁用键盘自带键盘_Win11笔记本禁
- c++怎么实现大文件的分块读写_c++ 文件指针s
- c# 如何用c#实现一个支持优先级的任务队列
- Win11更新后变慢怎么办_Win11系统更新后卡
- Windows怎样拦截WPS弹窗广告_Window
- 如何有效拦截拼接式恶意域名的垃圾信息
- Win11如何设置电源计划_Win11电源计划优化
- Windows10系统服务优化指南_Win10禁用
- 如何在 IIS 上为 ASP.NET 6 应用排除
- Windows怎样关闭Edge新标签页广告_Win
- XSLT怎么生成动态的HTML属性名和标签名
- Go语言中CookieJar的持久化机制解析:内存
- 如何在Golang中修改数组元素_通过指针实现原地
- Python正则表达式实战_模式匹配说明【教程】

terCache = CacheBuilder.newBuilder()
.maximumSize(100)
.expireAfterAccess(15, TimeUnit.MINUTES)
.removalListener(new RemovalListener
QQ客服