Spring JMS 与企业应用部署考量
1. Spring JMS 相关属性
1.1 可选属性
- prefetch :该可选属性用于指定单个会话中要加载的消息数量。
- task - executor :此可选属性用于指定 TaskExecutor,它负责运行和管理监听器线程。若未指定,则使用默认的任务执行器 SimpleAsyncTaskExecutor。Spring 中还有其他几种任务执行器,如 SyncTaskExecutor、TimerTaskExecutor、ThreadPoolTaskExecutor 和 WorkmanagerTaskExecutor 。具体描述可参考 Spring API 文档。
1.2 元素属性
元素有七个可指定的属性,其中只有两个是必需的,各属性定义如下:
|属性|是否必需|描述|
| ---- | ---- | ---- |
|destination|是|用于指定 JMS 目标名称,该名称通过消息监听器容器中定义的目标解析器进行解析。借助 JMS 命名空间支持,可在同一消息监听器容器中使用不同队列定义多个监听器。|
|ref|是|包含对用作消息监听器类的 Bean 的引用。|
|method|否|包含用作消息处理程序的方法名称。对于实现了 MessageListener 或 SessionAwareMessageListener 接口的消息监听器,可忽略此属性。|
|selector|否|包含一个字符串值,表示应用于此消息监听器的消息