日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

java 责任链模式 链表_责任链模式的实现及源码中应用

發布時間:2025/3/11 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 责任链模式 链表_责任链模式的实现及源码中应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

01

責任鏈模式的實現

假設一個出差任務的流程需要審批出差行程和出差報銷金額。那么,對應兩個部門的審核。我們先定義一個出差任務Task類:

然后,我們定義一個抽象的處理類Handler,其中具體的處理方法Handle交給子類去實現。

然后,出差行程的審核者繼承了Handler,并實現了其中的Handle方法。其中,處理成功,需要判斷是否有下一個Handler,如果有則傳遞下去。

然后繼續實現出差金額的審核者MoneyHandler,其處理思路和上面類似。

測試類如下,首先創建出差任務。然后在應用層設置處理流程(即有哪幾個Handler),然后從第一個流程開始啟動。

測試結果如下,從測試結果可以看出,正常處理。如果某一個審核不通過,則會終止當前的Handler向下傳播。

02

Netty中的源碼

在Netty中的Pipeline上是基于鏈表實現的責任鏈。在Pipeline上添加Handler,最終Handler會在責任鏈上傳遞。

具體可以參考Netty中的源碼。

此外,在Servlet中的Filter也是基于責任鏈模式實現的,與上面的案例實現方式一致。

總結

以上是生活随笔為你收集整理的java 责任链模式 链表_责任链模式的实现及源码中应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。