Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
以另一种形式使用JavaDB连接_Java_Sqlite_Sqlitejdbc - Fatal编程技术网

以另一种形式使用JavaDB连接

以另一种形式使用JavaDB连接,java,sqlite,sqlitejdbc,Java,Sqlite,Sqlitejdbc,我用Java创建了一个简单的Java连接脚本,用于连接到如下所示的数据库 import java.sql.*; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class dbconn { public static void main(String[] args) throws ClassNot

我用Java创建了一个简单的Java连接脚本,用于连接到如下所示的数据库

import java.sql.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

public class dbconn {

public static void main(String[] args) throws ClassNotFoundException
{

Class.forName("org.sqlite.JDBC");

Connection connection = null;  
try
{
  // create a database connection
  connection = DriverManager.getConnection("jdbc:sqlite:C:/Program Files (x86)/Spiceworks/db/spiceworks_prod.db");
  Statement statement = connection.createStatement();
  statement.setQueryTimeout(30);  // set timeout to 30 sec.                  
}
catch(SQLException e)
{
  // if the error message is "out of memory", 
  // it probably means no database file is found
  System.err.println(e.getMessage());
}
finally
{
  try
  {
    if(connection != null)
        connection.close();

  }
  catch(SQLException e)
  {
    // connection close failed.
    System.err.println(e);
  }
}
}
}
现在,我已经通过dbconn脚本中的一些SQL查询测试了这个连接,它可以正常工作

然而,我的问题是,我如何将数据库的这个实例调用到同一项目中的另一个表单中,以执行相同的SQL查询,这些查询是:

 ResultSet resultSet = null;  

  resultSet = statement.executeQuery("SELECT * FROM users");  
     while (resultSet.next()) 
     {  
         System.out.println("EMPLOYEE Email: " + resultSet.getString("email"));  
     }

您可以保留并重用
连接
,可能将其保存在某个静态字段中。如果您从多个线程访问它,SQLite必须在中工作。如果由于某种原因丢失了连接,您必须将代码放在某个位置以重新建立连接


如果
连接的使用不多
,您也可以使用一些方法在不再需要时打开和关闭它,最好是在
最后
块中。

您可以保留和重用
连接
,可能将其保存在某个静态字段中。如果您从多个线程访问它,SQLite必须在中工作。如果由于某种原因丢失了连接,您必须将代码放在某个位置以重新建立连接


如果
Connection
的使用不太频繁,您也可以使用一些方法在不再需要时打开和关闭它,最好是在
finally
块中。

我不清楚您的问题。如果您想在其他类中使用相同的连接对象,您可以将此代码包装在一个
静态
函数中,该函数返回该对象,然后在其他类中调用它。请ypu向我们提供有关您的项目的更多信息好吗?乍一看,如果将connection object作为一个静态变量,它会起作用吗?我的项目是一个票务管理系统,使用spiceworks票务和管理系统数据库,并通过另一个接口传递它。我想在我所有的类中使用上面使用的数据库连接。没有办法使用新的dbconn();语句或dbconn conn=new dbconn();这么做?我不清楚你的问题。如果您想在其他类中使用相同的连接对象,您可以将此代码包装在一个
静态
函数中,该函数返回该对象,然后在其他类中调用它。请ypu向我们提供有关您的项目的更多信息好吗?乍一看,如果将connection object作为一个静态变量,它会起作用吗?我的项目是一个票务管理系统,使用spiceworks票务和管理系统数据库,并通过另一个接口传递它。我想在我所有的类中使用上面使用的数据库连接。没有办法使用新的dbconn();语句或dbconn conn=new dbconn();要做到这一点?理解,但这对我在多个类中使用数据库连接没有多大帮助,这样我就不必每次都重新编码,从而导致代码混乱。这就是为每个java类外部编写dbconn脚本的目的。:)理解,但这对于在多个类中使用数据库连接并没有多大帮助,这样我就不必每次都重新编码,从而导致代码混乱。这就是为每个java类外部编写dbconn脚本的目的。:)