我正在使用Spring-integration
来收听队列,现在我面临着一个非常愚蠢的错误。事实证明,消息参数的名称拼写错误,导致运行时错误。要修复它,我必须重建java类,因为message属性的名称是硬编码的String
。我希望将来更容易解决此类错误,方法是通过properties
- 文件配置消息属性的名称,但我似乎找不到办法。它有可能吗?
public void someListenerMethod(@Header("someAttribute")
final Long someAttribute) {
我希望将参数设为@Header
可配置..
答案 0 :(得分:1)
我会回答自己,因为我找到了一种方法(虽然我不确定它是最优的......)
@Value("${my.header.property.name}")
private String myHeaderPropertyName;
public void someListenerMethod(@Headers
final Map<String, Object> headerAttributes) {
final Long myHeaderAttribute = (Long) headerAttributes.get(myHeaderPropertyName));