为什么有时在ServiceImpl层中还会注入Service

本文探讨了在业务处理过程中如何确保数据库与缓存的一致性。特别是在涉及图片等复杂存储操作时,通过合理使用事务来保证数据的完整性和一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先了解一个问题
我们平时在处理一些问题的时候都会在ServiceImpl层中注入Dao,在ServiceImpl中的方法会有一个开启失误的过程,如以下方法
//开启事务
public void test()
{
方法体;
}
//提交失误
//如果方法体出现异常,还会触发失误回滚

这是我们一般执行的过程

但是如果你处理的内容与缓存有关,比如你在执行的方法体中,操作的有图片的存储,有其他的一下存储,你的状态是要与缓存进行同步,同步之后方便缓存与数据库再去同步。这时就不仅仅是一个大的方法体在控制事务了。
如下面的方法介绍;
//开启事务
public void test()
{
方法体;
//开启事务
imgService.save(..);
//提交事务
}
//提交失误
//如果方法体出现异常,还会触发失误回滚

这样既可以在执行方法的时候,更新缓存的数据与数据库的数据同同步了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bore1994

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值