如何使用安装在服务器机上的Sqlite数据库,通过java编程连接客户端计算机



我正在使用java编程语言开发一个商业桌面应用程序,我使用Sqlite作为我选择的数据库。但是在这种情况下,我希望这个软件安装到两个或更多的客户端计算机,我的愿望是客户端计算机安装的软件应该使用服务器计算机软件Sqlite数据库(一个通用数据库)。我的问题是:使用网络和java实现这一目标的适当程序是什么?和应用于客户端和服务器计算机的正确连接字符串是什么?

下面是我的服务器连接为我工作:

import java.sql.*;
import javax.swing.JOptionPane;
public class dbconnection {
    Connection conn = null;
    public static Connection ConnectDB() {
        Statement stmt = null;
        try
        {
            Class.forName("org.sqlite.JDBC");
            Connection conn = DriverManager.getConnection("jdbc:sqlite:myDatabase.sqlite");
            System.out.println("Connected database successfully...");
            return conn; 
        }
        catch(Exception e)
        {
            System.out.println("Exception 1: "+ e);
            return null;
        }
    }
}

非常感谢!

从何时使用SQLite:

SQLite努力为单个应用程序和设备提供本地数据存储。

如果你想使用SQLite实现某种客户端/服务器架构,你可以这样实现(来源:服务器端数据库)

服务器端数据库


系统设计人员报告成功地将SQLite作为数据中心中运行的服务器应用程序的数据存储,或者换句话说,使用SQLite作为应用程序特定数据库服务器的底层存储引擎。
在这种模式下,整个系统仍然是客户机/服务器:客户机向服务器发送请求,并通过网络获得应答。但是,客户机请求和服务器响应是高级的、特定于应用程序的,而不是发送通用SQL并返回原始表内容。服务器将请求转换为多个SQL查询,收集结果,进行后处理、过滤和分析,然后构造只包含基本信息的高级回复。
开发人员报告说,在这种情况下,SQLite通常比客户端/服务器SQL数据库引擎更快。数据库请求由服务器序列化,因此并发性不是问题。并发性还通过"数据库分片"得到了改善:为不同的子域使用单独的数据库文件。例如,服务器可能为每个用户有一个单独的SQLite数据库,这样服务器可以处理数百或数千个同时连接,但每个SQLite数据库只被一个连接使用。

最新更新