第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

REST API如何查詢與關(guān)系表相關(guān)的資源

REST API如何查詢與關(guān)系表相關(guān)的資源

慕尼黑8549860 2019-02-16 22:16:38
比如說我有一個(gè)醫(yī)生表,病人表,醫(yī)生病人關(guān)系表,web想展示所有醫(yī)生的信息以及每個(gè)醫(yī)生對(duì)應(yīng)的病人(多對(duì)多的關(guān)系)的名字。這樣的話,是不是要先請(qǐng)求所有醫(yī)生資源然后發(fā)送根據(jù)每個(gè)醫(yī)生的id查找關(guān)系表的請(qǐng)求獲得病人的id再根據(jù)id發(fā)送查找病人名字的請(qǐng)求這樣的話前端就要發(fā)送1+n+n個(gè)請(qǐng)求。
查看完整描述

3 回答

?
慕后森

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊

http請(qǐng)求代價(jià)很高,應(yīng)該在業(yè)務(wù)層api接口中實(shí)現(xiàn)中查詢組裝好后一次返回。

查看完整回答
反對(duì) 回復(fù) 2019-03-01
?
手掌心

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

查看完整回答
反對(duì) 回復(fù) 2019-03-01
?
繁星點(diǎn)點(diǎn)滴滴

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":"病人名稱"},{...},{}
        ]
    },
    ....
]

}

查看完整回答
反對(duì) 回復(fù) 2019-03-01
  • 3 回答
  • 0 關(guān)注
  • 792 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)