camel-redis:为什么不打印到控制台?

时间:2014-04-19 16:43:46

标签: java apache-camel

我尝试做一个简单的测试,我从redis读取值并将它们打印到控制台。但是,虽然程序编译并运行,但它不会向控制台打印任何内容(是的,RedK中存在testKEY)。为什么会这样?

private static class MyRouteBuilder extends RouteBuilder {
    @Override
    public void configure() throws Exception {
        from("spring-redis://localhost:6379?command=GET&serializer=#serializer")
        .setHeader("CamelRedis.Key", constant("testKEY"))
        .to("stream:out");
    }
}

2 个答案:

答案 0 :(得分:1)

Camel Redis消费者可以订阅PUB / SUB频道并接收通知。它无法执行get或其他操作。 如果要从redis读取/获取值,则必须使用生产者端点。

答案 1 :(得分:1)

您可以尝试以下方式:

from("timer:redisPoll?period=30000")
    .setHeader("CamelRedis.Key", constant("testKEY"))
    .to("spring-redis://localhost:6379?command=GET&serializer=#serializer")
    .to("stream:out");

这应该每隔30秒在Redis上发出一个Get测试键并将结果打印到控制台。