Android 中的 JDBC 和远程 MySQL 连接
在 Android 应用程序中使用 JDBC API 连接到远程 MySQL 数据库理论上是可行的。但是,出于安全和性能方面的考虑,强烈建议不要采用这种方法。
安全风险
Android 应用程序容易被反编译,从而向恶意用户公开登录凭据。这些凭据可能会被利用来危害数据库并执行未经授权的操作。
性能注意事项
通过网络打开物理数据库连接非常耗时,尤其是当连接源自远程位置。这个问题对于全球分布的客户端来说变得很重要,会对性能产生负面影响。
基于 WebService 的解决方案
更安全、更高效的替代方案是采用面向服务的架构。这涉及到创建一个 Web 服务,最好是 RESTful,充当 Android 应用程序和远程数据库之间的中介。
Web 服务(通常是 Java 应用程序)可以与普通的旧 Java 对象 (POJO) 一起开发)封装了 JDBC 功能。此设计可保护凭据并将数据库访问与用户交互隔离。
示例代码
以下是使用 Jersey、Jackson 和 JDBC 的 ProductRestService 类示例:
@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; } }
注意:您的申请应遵循此面向服务的设计模式,确保安全性和最佳性能。 PHP、Python 或其他语言也可用于创建 Web 服务,但它应该提供与 Java 示例类似的功能。
以上是Android 应用程序是否应该对远程 MySQL 数据库使用 JDBC?的详细内容。更多信息请关注PHP中文网其他相关文章!