commit dirty
时间: 2023-10-12 18:05:11 浏览: 48
在我们的代码中,如果没有需要消费的东西,则不会进行更新操作。这将导致事务泄漏,导致其他人向表中插入数据时出错。在调用commit()方法时,实际上调用的是DefaultSqlSession类中的commit(false)方法。该方法的核心是执行器executor调用commit()方法,其中参数isCommitOrRollbackRequired(force)表示执行提交还是回滚。执行器的commit()方法根据是否自动提交和是否有未提交的更改来决定是否执行提交。如果是手动提交且有未提交的更改(dirty为true),或者force为true,则执行提交操作。否则,不执行提交操作。在提交之后,将dirty标记设置为false,表示没有未提交的更改。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [mybatis 没有强制commit导致事务泄露|select for update 造成的血案](https://blog.csdn.net/meng9069572154/article/details/109228191)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [浅析Mybatis中的事物提交commit()方法](https://blog.csdn.net/sunroyfcb/article/details/80517945)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)