springCloud-Alibaba——stream自定義生產者接口

目錄

(1)創建接口:

(2)修改啓動類:

(3)修改配置文件:

(4)編寫代碼:

(5)啓動測試:

(6)常見異常:

A、ibatis.binding異常:


(1)創建接口:

創建一個自定義生產者的binding對應的接口,在接口中寫一個out()方法,返回值爲MessageChannel,並在方法上添加註解Output,指定一個自定義的binding常量值,這個常量值是與配置文件中寫的那個自定義binding值保持一致。

(2)修改啓動類:

在啓動類上,綁定剛剛創建的自定義binding對應的那個接口。

(3)修改配置文件:

在配置文件中,添加一個自定義的binding的信息,注意binding綁定的名字要與對應接口中定義的常量字符串保持一致。

(4)編寫代碼:

首先通過Autowired創建自定義的接口對象,然後在方法體中,通過自定義接口對象調用output()方法發送消息。

(5)啓動測試:

啓動消息生產者,訪問接口,然後就會顯示發送消息成功。在rocketmq的控制檯中可以看到該topic下有剛剛發送的消息。這就表明stream自定義生產者接口成功了,按照這種模式,可以根據自己實際業務需要,配置若干個不同的自定義接口來完成各種業務數據的發送了。

(6)常見異常:

A、ibatis.binding異常:

如果項目中使用了mybatis,那麼可能會在使用消息隊列的時候,應該會報一個異常:org.apache.ibatis.binding.BindingException,它會因爲寫mq自定義的接口爲mybatis的接口,結果因爲找不到對應的xml而報錯。

解決方法:我們只需要精確mybatis的接口掃描路徑,不讓它掃描到我們寫的mq的接口即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章