如何 运行 一个方法在 spring 引导中达到所需的次数?

How to run a method a the required number of times in spring boot?

我正在学习 RabbitMq,只是想发送消息所需的次数。 我有 Sender class 发送消息到交换,我想重复它几次。 我正在使用预定的注释,但它有不同的用途,并且与我不匹配,因为它不会停止。

@Scheduled(initialDelay = 1000,fixedDelay = 1500)
    public void sendNumbers(){
        int index = atomicInteger.getAndIncrement();
        UUID uuid = uuids.get(index);
        Pair<Integer,Integer> pair = sumPair.get(uuid);
        MessagePostProcessor messagePostProcessor = message -> {
            MessageProperties messageProperties = message.getMessageProperties();
            messageProperties.setCorrelationId(uuid.toString());
            messageProperties.setReplyTo(response.getName());
            return message;
        };
        rabbitTemplate.convertAndSend(directExchange.getName(),routingKey,pair,messagePostProcessor);
    }

我该怎么做?

只需使用 for 循环来重复您想要的次数。

您可以在 ApplicationRunner 内完成。

@Bean
ApplicationRunner runner(RabbitTemplate template) {
    return () -> {
        for (int i = 0; i < 10; i++) {
            ...
            template.convertAndSend(...)
        }
    };