【JAVA-Mybatis】Mybatis二级缓存问题

来源:互联网 发布:仓禀足而知礼节 编辑:程序博客网 时间:2024/05/01 21:55
先说问题:项目中提交时会有附图的提交。现在项目中的做法为:统一的附件服务器,提交表单时,将ID传到后台并根据ID更新附件表。查询时,将加密后的id置为resourceId,前台根据这个调用统一接口展示。
重点来的,当提交流程时需要校验,保存之前需要查询表单的所有信息校验,此时,先查询表单信息,并且调用公共的查询方法,对resouceId进行了加密。当我提交时,再次查询表,由于校验时,更改resourceId,虽然没保存,但是,由于未提交,mybatis还是会使用二级缓存。
 
以下是错误的写法
这样,由于未做submit和commit操作,当前还处于同一事务内,会查询到被修改过resourdeId的数据。从而修改了不希望改的属性
正确的写法:
原创粉丝点击