Spring AMQP 1.6.0 發布候選版本 (以及 1.5.6) 已發布

發布 | Gary Russell | 2016 年 5 月 6 日 | ...

我們很高興宣布 Spring AMQP 1.6 發布候選版本 (1.6.0.RC1) 現在已在 spring milestone repo 中提供。

1.5.6 維護版本也已發布,其中包含一些錯誤修復

以下是 1.6.0 版本內容的摘要,如需更多詳細資訊,請參閱參考文件中的新功能,以及此版本的已關閉 JIRA 問題

  • 一個新的 jar 檔案 spring-rabbit-test 包含一個測試套件,以幫助測試 @RabbitListener 方法;請參閱測試章節

  • 一個方法上的多個 @RabbitListener 註解(當使用 Java 8 時)和 @RabbitListeners 註解(對於 pre-Java 8),每個都允許相同的方法成為多個監聽器容器的監聽器方法。

  • 完全支援 延遲訊息交換 RabbitMQ 外掛程式。

  • AsyncRabbitTemplate 回傳 ListenableFuture<?> 用於請求/回覆訊息傳遞。

  • 一個選項,用於在監聽器容器進入閒置狀態時發布 ApplicationEvents

  • 快取連線工廠現在公開快取統計資訊

  • @RabbitListener 方法現在將型別資訊傳達給訊息轉換器,用於接收訊息。 例如,這表示當收到標頭中沒有型別資訊的訊息時(例如,來自非 Spring AMQP 應用程式的傳送者),Jackson2JsonMessageConverter 不再需要自訂類別對應器。 相反,@RabbitListener 方法參數型別用於轉換。 此外,Methodbean 也透過訊息屬性提供給自訂轉換器。

@Bean
public SimpleRabbitListenerContainerFactory rabbitListenerContainerFactory(
		ConnectionFactory rabbitConnectionFactory) {
	SimpleRabbitListenerContainerFactory factory = 
             new SimpleRabbitListenerContainerFactory();
	factory.setConnectionFactory(rabbitConnectionFactory);
	factory.setMessageConverter(new Jackson2JsonMessageConverter());
	return factory;
}

public static class MyService {

	@RabbitListener(queues="foos")
	public void handleFoos(Foo foo) {
	    ...
	}

	@RabbitListener(queues="lists.of.bars")
	public void handleBarLists(List<Bar> bars) {
            ...
	}
}
  • @RabbitListener 不可恢復的錯誤現在被預設錯誤處理常式視為致命錯誤,以避免無休止地重新傳遞這些訊息。

  • @RabbitListener @SendTo 位址(當接收訊息沒有 replyTo 時使用)現在可以包含一個 SpEL 表達式,在執行時針對輸入和輸出訊息進行評估。

  • 當使用 Java 序列化訊息時,您現在可以指定一個允許反序列化的類別/套件的「白名單」。 建議從不受信任的來源接收序列化物件時使用此方法。

  • 您現在可以宣告「內部」交換器,訊息無法直接發布到這些交換器。

  • 現在可以使用多個代理位址配置日誌附加器,並且可以設定客戶端屬性。

  • @QueueBinding 註解現在支援佇列、交換器和綁定的引數。

我們預計在 5 月底發布最終版本。

請下載並試用發布候選版本,以便我們在 GA 之前解決任何問題。 接下來 (2017) 是 2.0 版本,可能需要 Spring 5 並包含一些 Reactive Streams 工作。

我們歡迎使用常用機制提供任何回饋、問題或幫助

專案頁面 | JIRA | 貢獻 | 求助

即將舉行的會議

務必註冊 Spring I/O 會議,您可以在其中了解 Spring 提供的最新和最棒的內容。

此外,SpringOne Platform 即將到來!

取得 Spring 電子報

保持與 Spring 電子報的連線

訂閱

領先一步

VMware 提供培訓和認證,以加速您的進度。

了解更多

取得支援

Tanzu Spring 在一個簡單的訂閱中提供對 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位檔案。

了解更多

即將舉行的活動

查看 Spring 社群中所有即將舉行的活動。

檢視全部