我需要开发一个Camel Route,其中数据必须以不同的数据格式进行转换。
Camel为此提供了多种解决方案:
在端点级别管理不同的数据格式(如果我正在编写端点)
注册并使用typeConverters
在路由上明确添加执行转换的处理器
不同方法有哪些好处和缺点?
答案 0 :(得分:0)
通常的做法是注册一个类型转换器方法,当你获得驼峰上下文和交换的引用时可以使用它,你可以使用Message.getBody(class)将消息体转换为你想要的数据格式是转型的类型转换器。
如果您在端点级别管理数据格式,则无法将数据格式处理方法公开给其他camel组件,就像注册类型转换器一样。但是,如果您只想在端点内使用这些数据格式,那么它可能很有用。
如果你编写一个处理器来执行转换,你必须自己将处理器添加到路线中,如果你想在多个地方进行转换,它就不方便了。