簡體   English   中英

如何在Java中設計和接口(OOP類型),以便我可以使用直接數據庫訪問或使用Web服務?

[英]How do I Design and Interface (OOP kind) in Java so that I can either use direct database access or use web services?

目前我必須查詢我不擁有的具有Web服務的數據庫,因此他們提供的是我得到的。 由於這是內部的(有點),我可能會在將來獲得直接訪問權限,以便我可以在查詢中獲得更好的數據。

我不想一次又一次地寫一切。 如果我在Java中這樣做,我會編寫一個接口(編程類型,想想Implements Interface,OOP)? 我該怎么做? 或者我只是寫一個全新的類並“插入它”。

這只是一個常規的客戶端/服務器架構。 Http請求,服務器調用servlet或jsp,返回數據。

我不確定我的想法是否是正確的設計。

絕對聽起來你應該在這里使用具有不同實現的接口。 就像是:

public interface DataAccess {
    Data getData();
}

然后,您可以針對此API進行編碼,並根據需要插入/注入不同的實現。 所以你可以這樣:

public class DirectDataAccess implements DataAccess {
    public Data getData() {
        //use JDBC, ORM, or similar
    }
}

或這個:

public class WebServiceDataAccess implements DataAccess {
    public Data getData() {
        //call web service
    }
}

但只要您的客戶端代碼僅引用DataAccess接口,您就已成功將客戶端與服務分離。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM