色偷偷91综合久久噜噜-色偷偷成人-色偷偷尼玛图亚洲综合-色偷偷人人澡久久天天-国内精品视频一区-国内精品视频一区二区三区

Hello! 歡迎來到小浪云!


MyBatis 批量插入數(shù)據(jù)時,攔截器為什么失效,如何解決?


avatar
小浪云 2024-11-10 213

MyBatis 批量插入數(shù)據(jù)時,攔截器為什么失效,如何解決?

mybatis批量插入數(shù)據(jù)時攔截器失效

問題描述:在項目中使用mybatis編寫了攔截器,為插入或更新的數(shù)據(jù)自動填充基礎(chǔ)字段值。但在使用批量插入數(shù)據(jù)的方法時,攔截器卻失效,導(dǎo)致基礎(chǔ)字段無法賦值。

代碼示例:

@component @intercepts({         @signature(type = executor.class,method = "update",args = {mappedstatement.class, object.class}) }) public class mybatisautofillplugin implements interceptor {     // ... }
登錄后復(fù)制

這個問題的根源在于批量插入語句使用的是foreach標(biāo)簽,該標(biāo)簽會將一個集合中的元素逐一插入到數(shù)據(jù)庫中。此時攔截器只攔截了executor.update方法,無法攔截批量插入的執(zhí)行過程。因此需要額外攔截statementhandler.update方法來解決此問題。

解決方法:

@Intercepts({         @Signature(type = Executor.class,method = "update",args = {MappedStatement.class, Object.class}),         @Signature(type = StatementHandler.class,method = "update",args = {Statement.class}) }) public class MyBatisAutoFillPlugin implements Interceptor {     // ... }
登錄后復(fù)制

添加攔截statementhandler.update方法后,攔截器即可正常工作,為批量插入的數(shù)據(jù)正確填充基礎(chǔ)字段值。

相關(guān)閱讀

主站蜘蛛池模板: 狠狠色噜噜综合社区 | 国内精品久久久久影院6 | 国内精品线在线观看 | 狠狠色丁香九九婷婷综合五月 | 亚洲黄色一区二区 | 国产精自产拍久久久久久蜜 | 国产精品一级毛片不收费 | 亚洲精品综合久久 | 日韩黄色影视 | 国产三级精品三级在线观看 | 成人全黄三级视频在线观看 | 久久影院一区二区三区 | 中日欧洲精品视频在线 | 欧美bbbwbbbw肥妇 | 中文字幕在线乱人伦 | 欧美一进一出抽搐大尺度视频 | 老司机精品视频免费 | 99re在线免费视频 | 天天操人人干 | 狠狠色狠狠色综合久久第一次 | 日韩精品a在线视频 | 日本精品1在线区 | 天天爽天天色 | 久久99这里只有精品国产 | 日韩不卡一级毛片免费 | 国产伊人影院 | 国产伦码精品一区二区三区 | 伊人色院成人蜜桃视频 | 95免费观看体验区视频 | fc2ppv成年免费视频观看 | 欧美日本道免费一区二区三区 | 三级中文字幕永久在线视频 | 特级片免费看 | 另类一区二区 | 精品久久一区二区三区 | a一级黄色 | 亚洲天堂色 | 天天色网站 | 色综合久久天天综线观看 | 日本成人免费在线 | 日日拍夜夜嗷嗷叫狠狠 |