Spring RabbitTemplate执行方法可见性

时间:2018-11-30 13:59:47

标签: java spring spring-amqp spring-rabbit

RabbitTemplate有一个publicexecute方法,另一个有private的接收ConnectionFactory的方法。我可以理解,如果没有公开ConnectionFactory,它是私有的,但是它已经有一个getConnectionFactory()方法。

我想修饰execute方法的行为,但不能。我没有理由不对其进行保护,以便我们可以覆盖它?

1 个答案:

答案 0 :(得分:1)

您可以编辑问题以确切说明您要实现的目标吗?

我不愿意公开它,因为没有什么可以阻止用户使用完全不相关的连接工厂来调用它(无法保证它是从getConnectionFactory()收到的)。

虽然我不希望有任何问题,但是可能会有一些意想不到的副作用,尤其是如果模板是事务性的,这会在发生奇怪的事情时给我们带来一些支持上的痛苦。

也许我们可以想出其他方法来满足您的需求。