唯一JMSMessageID的最大大小

时间:2012-04-17 09:54:03

标签: java java-ee jms weblogic-10.x

我在我的应用程序中使用JMS作为我的一个要求。我想在数据库中存储每个消息的唯一ID(实际上是MDB),我通过以下代码获取唯一ID:

@Override
public void onMessage(Message msg) {
        try {
            id = msg.getJMSMessageID();             
        } catch (JMSException e1) {
        } 
}

从上面的代码我有消息唯一ID,但我想知道的是什么可能是任何消息的最大大小,所以我需要相应地配置数据库。

我正在使用Weblogic Server。

1 个答案:

答案 0 :(得分:1)

JMS消息ID的最大长度由JMS提供程序定义。

至少您需要查阅提供商文档,以确定数据库列的适当大小。对于更便携的解决方案,您应该将其设置为相当大的值 - 这样您就不依赖于任何一个供应商JMS实现来指定列的大小。

我想说,对于最便携的解决方案,如果可以避免,则根本不应存储JMS消息ID。您始终可以为邮件生成自己的ID,并将其存储,这样就可以为您的目的定义正确的列长度。