鍍金池/ 問(wèn)答/Java  HTML/ Java Web應(yīng)用中調(diào)用外部接口所在包/層如何命名?

Java Web應(yīng)用中調(diào)用外部接口所在包/層如何命名?

引言

阿里巴巴Java開(kāi)發(fā)手冊(cè)中關(guān)于應(yīng)用分層的描述如下:

六、工程結(jié)構(gòu)

( 一 ) 應(yīng)用分層
  1. 【推薦】圖中默認(rèn)上層依賴(lài)于下層,箭頭關(guān)系表示可直接依賴(lài),如:開(kāi)放接口層可以依賴(lài)于Web 層,也可以直接依賴(lài)于 Service 層,依此類(lèi)推:
  • 開(kāi)放接口層:可直接封裝 Service 方法暴露成 RPC 接口;通過(guò) Web 封裝成 http 接口;進(jìn)行

網(wǎng)關(guān)安全控制、流量控制等。

  • 終端顯示層:各個(gè)端的模板渲染并執(zhí)行顯示的層。當(dāng)前主要是 velocity 渲染,JS 渲染,

JSP 渲染,移動(dòng)端展示等。

  • Web 層:主要是對(duì)訪問(wèn)控制進(jìn)行轉(zhuǎn)發(fā),各類(lèi)基本參數(shù)校驗(yàn),或者不復(fù)用的業(yè)務(wù)簡(jiǎn)單處理等。
  • Service 層:相對(duì)具體的業(yè)務(wù)邏輯服務(wù)層。
  • Manager 層:通用業(yè)務(wù)處理層,它有如下特征:
    1 ) 對(duì)第三方平臺(tái)封裝的層,預(yù)處理返回結(jié)果及轉(zhuǎn)化異常信息;
    2 ) 對(duì) Service 層通用能力的下沉,如緩存方案、中間件通用處理;
    3 ) 與 DAO 層交互,對(duì)多個(gè) DAO 的組合復(fù)用。
  • DAO 層:數(shù)據(jù)訪問(wèn)層,與底層 MySQL、Oracle、Hbase 等進(jìn)行數(shù)據(jù)交互。
  • 外部接口或第三方平臺(tái):包括其它部門(mén) RPC 開(kāi)放接口,基礎(chǔ)平臺(tái),其它公司的 HTTP 接口。

問(wèn)題描述

如上應(yīng)用分層中,外部接口或第三方平臺(tái)層對(duì)應(yīng)的包一般如何命名?

感謝各位不吝賜教,謝謝!

回答
編輯回答
涼汐

我們的做法是建一個(gè)sdk包,專(zhuān)用于存放第三方接口調(diào)用相關(guān)的類(lèi),沒(méi)有特殊情況的話,sdk包中的類(lèi)會(huì)進(jìn)行異常處理并且不再拋出受檢查的異常...

2018年4月5日 07:15