如何在Android中通过JDBC连接到PostgreSQL服务器?

8

我需要在局域网内连接到一个没有 web 服务的 PostgreSQL 服务器。

目前我认为 JDBC 是唯一可以考虑的方式。

我应该如何实现这个目标?有没有现成的第三方库可以导入到我的 Android 项目中?

任何回复都将不胜感激。

2个回答

8
你可以在pgandroid邮件列表中找到有关部署JDBC驱动程序以与PostgreSQL通信的讨论。那里有一些示例,如果遇到问题,那是寻求帮助的正确地方。我相信常规的.jar文件可以很好地与最近的Android版本配合使用,但您可能需要修补一些内容以与旧版Android兼容。
如果您不想使用Java / JDBC,则可以使用psqldroid库。

1
如果.apk是公开的,直接从Android访问Pg将很难保证安全。想象一下,通过提取.apk的凭据可能会造成的混乱。更安全的方法(也更网络高效):https://dev59.com/NGTWa4cB1Zd3GeqPEpSj#10890705 - Craig Ringer

6
如果您确实需要移动设备与数据库服务器之间的直接连接(没有安全问题),那么您不需要任何额外的库?我想只需在Android上部署JDBC驱动程序即可......?
另一个选择是在PosgreSQL服务器前创建一个小型Web服务器,其中包含JDBC驱动程序。然后,您可以通过HTTP定义简单的发送/接收SQL /结果集协议。这样做的优点是,移动设备上的应用程序占用空间更小。

2
这是非常可怕的安全问题,@user617389要小心。如果有人从你的.apk中获取了安全凭证,那么他们可能会造成极大的破坏,如果你采用这种方式进行操作。更安全的方法是编写一个受限制的Web服务来完成所需的工作;请参见https://dev59.com/NGTWa4cB1Zd3GeqPEpSj#10890705。 - Craig Ringer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接