在Java中在线存储GUI访问的数据库

在Java中在线存储GUI访问的数据库,java,database,user-interface,jdbc,Java,Database,User Interface,Jdbc,我想创建一个数据管理系统,它将通过GUI供不同位置的许多用户使用。我想在用户登录GUI时使用客户机/服务器连接,然后每当添加/更新任何内容时,数据库都会相应地更新。首先,我想知道这个架构是否符合逻辑,是否可以工作?其次,我是否需要在线存储数据库,或者是否可以在本地存储数据库,然后由用户使用GUI在线访问?数据库当前处于MS Access中,但是如果它能让事情变得更简单,我可以迁移到另一个程序 我正在Java中进行GUI,并将使用JDBC访问数据库 我建议您使用mysql数据库,您的连接在java

我想创建一个数据管理系统,它将通过GUI供不同位置的许多用户使用。我想在用户登录GUI时使用客户机/服务器连接,然后每当添加/更新任何内容时,数据库都会相应地更新。首先,我想知道这个架构是否符合逻辑,是否可以工作?其次,我是否需要在线存储数据库,或者是否可以在本地存储数据库,然后由用户使用GUI在线访问?数据库当前处于
MS Access
中,但是如果它能让事情变得更简单,我可以迁移到另一个程序


我正在
Java
中进行GUI,并将使用
JDBC
访问数据库

我建议您使用mysql数据库,您的连接在java jdbc中是这样的

 Class.forName("com.mysql.jdbc.Driver");
  // Setup the connection with the DB
  connect = DriverManager
      .getConnection("jdbc:mysql://remoteUri/database-name?"
          + "user=user&password=userpw");

没有“最佳”选项,但一个好的解决方案是开发一些web服务,将流量引导到数据库,然后让GUI调用这些web服务。


这样,您可以更轻松地控制访问,并通过让web服务执行验证和健全性检查来确保数据完整性。

是的,这是可能的。首先,您必须创建一个数据库(我建议使用Oracle)。然后,在GUI中,您可以连接到数据库,GUI中的每个按钮都将执行某些SQL语句,这些语句将更改数据库中的数据


我发现的一个好网站是:

为什么特别是mySQL?难道你不认为在互联网上提供原始的jdbc连接有点安全风险吗?例如,通过web服务间接公开数据不是更好吗?看看n层体系结构:实际上,您将有一个表示层(GUI)与业务逻辑层(将查询写入数据库的地方)通信,而业务逻辑层正是与数据层通信的。尝试使用DAO进行DB通信,以便随着时间的推移可以为不同的数据库添加额外的逻辑。