日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

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

01

責任鏈模式的實現

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

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

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

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

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

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

02

Netty中的源碼

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

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

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

總結

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

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