使用JDBC 在Android 中存取遠端MySQL 資料庫:綜合分析
使用JDBC API 從Android 應用程式遠端連線到MySQL 資料庫是一種常見的操作移動開發者之間的問題。雖然建立直接連接在技術上是可行的,但它帶來了重大的安全和效能問題。
安全影響
允許 Android 應用程式直接連接到 MySQL 資料庫帶來了重大安全問題風險。惡意用戶端可以反編譯應用程式並取得對敏感資料庫憑證的存取權限,從而允許未經授權的存取、資料外洩或資料庫操作。
效能問題
開啟實體資料庫連線會消耗相當長的時間,特別是對於長距離的遠端連線。為每個資料庫操作或一組操作建立連接將顯著影響應用程式效能,особенно для пользователей в отдаленных регионах。
推薦方法:服務導向的體系結構
要解決強烈建議採用服務導向的架構來應對這些挑戰。此方法涉及建立公開 RESTful Web 服務的服務提供者應用程式。這些服務可以與 MySQL 資料庫交互,並提供資料檢索和操作的端點。
範例Java 服務提供者實作
使用Java 和Jersey 和Jackson 等函式庫,您可以可以建立一個RESTful 服務,該服務公開從資料庫檢索產品資料的方法:
@Path("/product")
public class ProductRestService {
@GET
@Path("/list")
@Produces(MediaType.APPLICATION_JSON)
public List getProducts() {
List productList = new ArrayList();
Connection con = ...; // Establish database connection
// Execute SQL query and populate productList
return productList;
}
}
服務使用者應用程式的職責
然後,Android 應用程式將使用服務提供者應用程式提供的 Web 服務。它將向 RESTful 端點發送請求以檢索資料或執行資料庫操作。這種解耦方法可確保安全且有效率地處理資料庫連線。
PHP 替代方案
您可以使用 PHP 或其他程式設計方式,而不是用 Java 開發服務提供者應用程式支援 RESTful Web 服務的語言。 Android 應用程式將與 Web 服務進行交互,無論用於開發它們的底層技術如何。
結論
雖然 JDBC 理論上可以用於連接到遠端 MySQL 資料庫在 Android 應用程式中,由於安全風險和效能問題,強烈建議不要這樣做。採用服務導向的架構和專用服務提供者應用程式是確保安全且有效率的資料庫存取的首選解決方案。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3