Heim >Datenbank >MySQL-Tutorial >Sollten Android-Apps JDBC für Remote-MySQL-Datenbanken verwenden?
JDBC- und Remote-MySQL-Konnektivität in Android
Die Verbindung zu einer Remote-MySQL-Datenbank über JDBC-APIs in einer Android-Anwendung ist theoretisch machbar. Von diesem Ansatz wird jedoch aufgrund von Sicherheits- und Leistungsbedenken dringend abgeraten.
Sicherheitsrisiken
Android-Anwendungen sind anfällig für Dekompilierung, wodurch Anmeldeinformationen böswilligen Benutzern preisgegeben werden. Diese Anmeldeinformationen könnten ausgenutzt werden, um die Datenbank zu gefährden und nicht autorisierte Aktionen auszuführen.
Leistungsüberlegungen
Das Öffnen einer physischen Datenbankverbindung über ein Netzwerk ist zeitaufwändig, insbesondere wenn die Die Verbindung stammt von einem entfernten Ort. Dieses Problem wird für global verteilte Clients von Bedeutung und wirkt sich negativ auf die Leistung aus.
WebService-basierte Lösung
Eine sicherere und effizientere Alternative ist der Einsatz einer serviceorientierten Architektur. Dazu gehört die Erstellung eines Webdienstes, vorzugsweise RESTful, der als Vermittler zwischen der Android-App und der Remote-Datenbank dient.
Der Webdienst, typischerweise eine Java-Anwendung, kann zusammen mit einem einfachen alten Java-Objekt (POJO) entwickelt werden ), das die JDBC-Funktionalität kapselt. Dieses Design schützt Anmeldeinformationen und trennt den Datenbankzugriff von Benutzerinteraktionen.
Beispielcode
Hier ist ein Beispiel einer ProductRestService-Klasse mit Jersey, Jackson und JDBC:
@Path("/product") public class ProductRestService { @GET @Path("/list") @Produces(MediaType.APPLICATION_JSON) public List<Product> getProducts() { List<Product> productList = new ArrayList<>(); Connection con = ...; // Establish database connection // JDBC code to retrieve product data omitted for brevity return productList; } }
Hinweis: Ihre Anwendung sollte diesem serviceorientierten Designmuster folgen um Sicherheit und optimale Leistung zu gewährleisten. PHP, Python oder andere Sprachen können ebenfalls zum Erstellen des Webdienstes verwendet werden, er sollte jedoch eine ähnliche Funktionalität wie das Java-Beispiel bieten.
Das obige ist der detaillierte Inhalt vonSollten Android-Apps JDBC für Remote-MySQL-Datenbanken verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!