java sqlite3查询慢_java连接数据库进行查询优化跑不通谁能帮我调下通
你的Connection變量應該在類之中,在使用ResultSet之前不可以把Statement和Connnection不應該關,你的ResultSet不應被返回而是直接把結果拿到 []string 內再返回import java.util.Arrays;
import java.lang.*;
import java.sql.*;
public class DatabaseConnectorTest {
private Connection connection = null;
private Statement statement = null;
public void connect(String connString) throws SQLException {
try {
Class.forName("org.sqlite.JDBC");
connection = DriverManager.getConnection(connString,"root", "root");
} catch (SQLException e) {
System.err.print("connect SQLException: ");
System.err.println(e.getMessage());
} catch (ClassNotFoundException e) {
System.err.print("ClassNotFoundException: ");
System.err.println(e.getMessage());
}
}
public String[] getUserName(String connString, String SQLString) {
ResultSet rs = null;
try {
if(null == connection)
connect(connString);
if(null == statement)
statement = connection.createStatement();
rs = statement.executeQuery(SQLString);
int rowcount = 0;
int i = 1;
while(rs.next()) {
rowcount = i++;
}
String[] retArray = new String[rowcount];
i=0;
rs = statement.executeQuery(SQLString);
while (rs.next()) {
retArray[i++] = rs.getString("user_name");
}
return retArray;
} catch (SQLException e ) {
System.err.print("getUserName SQLException: ");
System.err.println(e.getMessage());
} finally {
if (statement != null) {
try { statement.close(); }
catch(SQLException e) {
System.err.print("getUserName Final SQLException: ");
System.err.println(e.getMessage());
}
}
}
return null;
}
public static void main(String[] agrs){
String connString = "jdbc:sqlite:/tmp/test.db"; <<<< 用你自己的
String SQLString = "SELECT user_name FROM users";
DatabaseConnectorTest db = new DatabaseConnectorTest();
String[] user_name = db.getUserName(connString, SQLString);
System.out.println(Arrays.toString(user_name));
}
}
總結
以上是生活随笔為你收集整理的java sqlite3查询慢_java连接数据库进行查询优化跑不通谁能帮我调下通的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: java integer null 0_
- 下一篇: java 错误码设计_JAVA端的错误码
