3 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊
http請(qǐng)求代價(jià)很高,應(yīng)該在業(yè)務(wù)層api接口中實(shí)現(xiàn)中查詢組裝好后一次返回。

TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個(gè)贊
REST API 只是對(duì)外暴露服務(wù),邏輯應(yīng)該在業(yè)務(wù)層實(shí)現(xiàn)。
class Doctor{
private Integer id;
private String name;
private List<Patient> patients;
....
}
業(yè)務(wù)層獲取List<Doctor>,序列化為JSON或者XML,
前端發(fā)送一次HTTP請(qǐng)求,調(diào)用該REST API,從而獲取這個(gè)JSON或者XML

TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超3個(gè)贊
這個(gè)業(yè)務(wù)認(rèn)真想想,還是非常的復(fù)雜。
從樓主的提問出發(fā)。
其實(shí)這個(gè)問題可以理解為:“病人們的醫(yī)生是誰?!”,也可以理解為,“醫(yī)生們的病人們”(指的是數(shù)據(jù)庫已有的數(shù)據(jù),不區(qū)分“已處理”和“正在處理”等這些狀態(tài))
怎么去實(shí)現(xiàn)這個(gè)業(yè)務(wù)呢?
基于上面思路出發(fā),REST API的路徑就是這樣 “/doctors/patients”(小學(xué)英文)
從數(shù)據(jù)庫查詢出所有的醫(yī)生,再根據(jù)醫(yī)生和病人的關(guān)系表獲取每個(gè)醫(yī)生下面的所有病人。
我會(huì)拼裝成一個(gè)這樣的JSON數(shù)據(jù)
{
datas:[
{
"docName":"醫(yī)生名稱",
"patients":[
{"patientName":"病人名稱"},{...},{}
]
},
....
]
}
添加回答
舉報(bào)