@Service
public class OrderServiceImpl implements OrderService {
@Override
@Compensable(confirmMethod = "confirmOrder", cancelMethod = "cancelOrder")
public void createOrder(Order order) {
}
public void confirmOrder(Order order) {
}
public void cancelOrder(Order order) {
}
}
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
@Async
public CompletableFuture<UserDetails> getUserDetails(String userId) {
UserDetails userDetails = userMapper.getUserDetails(userId);
return CompletableFuture.completedFuture(userDetails);
}
}