【发布时间】:2011-10-08 02:37:53
【问题描述】:
我正在尝试使用 SQLite 数据库创建一个简单的应用程序。我选择使用SQLiteJDBC driver。
以下代码取自上述网站。 我的问题是关于 public static void main 之后的行...
上面写着:Class.forName("org.sqlite.JDBC");
我的问题是,这条线是什么意思?它有什么作用?它似乎没有连接到代码的其余部分。 Class.forName() 应该返回一个类,但该行似乎在体内独立存在。我可以看到它返回的任何内容都不会被代码的另一部分使用。
请帮助澄清这一点。提前致谢。
public class Test {
public static void main(String[] args) throws Exception {
Class.forName("org.sqlite.JDBC");
Connection conn =
DriverManager.getConnection("jdbc:sqlite:test.db");
Statement stat = conn.createStatement();
stat.executeUpdate("drop table if exists people;");
stat.executeUpdate("create table people (name, occupation);");
PreparedStatement prep = conn.prepareStatement(
"insert into people values (?, ?);");
prep.setString(1, "Gandhi");
prep.setString(2, "politics");
prep.addBatch();
prep.setString(1, "Turing");
prep.setString(2, "computers");
prep.addBatch();
conn.setAutoCommit(false);
prep.executeBatch();
conn.setAutoCommit(true);
ResultSet rs = stat.executeQuery("select * from people;");
while (rs.next()) {
System.out.println("name = " + rs.getString("name"));
System.out.println("job = " + rs.getString("occupation"));
}
rs.close();
conn.close();
}
}
【问题讨论】: