java - MySQL和Java之间通信的最佳方式

标签 java android mysql database

我正在用 Java 开发游戏,我需要从 mysql 数据库中存储和获取数据。

目前,我在我的 Java 应用程序源代码中保存了登录凭据,并且我正在使用一些库进行通信。但我认为这是一种真正不安全的方式,导致凭据保存在 Java 文件中。

我想知道如果我通过一些服务器端 PHP 脚本来完成它会怎样,这些脚本只会获取一些信息并执行必要的操作。但同样有人可以获得该链接并做一些坏事。

我还考虑过为每个注册的用户创建一个新的数据库和 mysql 用户。所以会有一个中央数据库,其中只有游戏信息,而且是只读的。所以没有安全问题。并且用户信息会保存在他自己的数据库中,只有他才能登录。但我看到一个问题,如果我需要从另一位用户那里获取一些信息怎么办?

所以我想知道保持简单和安全的最佳方法是什么?

最佳答案

在服务器端(通过 PHP 或 Java 或其他编程语言)定义一组与数据源(MySQL 或其他)通信的服务(RESTful 会更好)。然后,从您的客户端使用这些服务。现在,您可以确保客户端和服务器点进行通信,例如使用服务的身份验证和授权,您可以为此使用 OAuth。

also thought about creating a new database and mysql user for each user registered. So there would be central database where would be just informations for game and it would be read only. So no security problems. And user informations would be saved in his own database and only he would have login for it

这是不行的。由于这是一款游戏,您必须每个用户维护一个数据库。它的成本很高,而且您将遇到比从另一个用户检索数据更多的问题。

关于java - MySQL和Java之间通信的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28222701/

相关文章:

java - 添加额外的 getter 和 setter 后出现 JPA 异常

java - kafka 与 Apache Spark 集成

串口安卓蓝牙UUID导致异常

java - 如何在点击android时全屏显示图像?

MySql触发器删除同一张表中的子记录

php - 如何访问其他主机中的 CPanel MySql 数据库

java - 如何检查 JMX 代理是否在 Tomcat 中工作?

java - 用于查找以下字符串的 Eclipse 正则表达式

java - 使用 Toast 显示强制转换的 int 时应用程序崩溃

php - 如何将两个 MySQL 查询连接到一个数组中?