【发布时间】:2013-12-02 16:12:48
【问题描述】:
我正在学习java 我使用 mysql 创建了简单的 (CRUD) java 程序,它工作正常
我想尝试使用相同的数据库切换到 SQLite(我已经将 mysql 数据库转换为 sqlite) 我正在使用这个 JDBC 驱动程序:https://bitbucket.org/xerial/sqlite-jdbc 但不知何故,netbeans 无法完成运行我的程序(尽管之前没有错误) 我在输出栏上有很多新错误:java.lang.ClassNotFoundException: org.sqlite.JDBCException in thread "AWT-EventQueue-0" java.lang.NullPointerException
at tes.MainForm.Tampil(MainForm.java:46)
at tes.MainForm.<init>(MainForm.java:85)
at tes.MainForm$4.run(MainForm.java:329)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)`
我的 DBConnection 类
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DBConnection {
Connection c = null;
Statement script;
public DBConnection(){
try{
Class.forName("org.sqlite.JDBC");
// Class.forName("com.mysql.jdbc.Driver");
// c = DriverManager.getConnection("jdbc:ucanaccess://c:/asa.accdb");
c = DriverManager.getConnection("jdbc:sqlite:C:/titit2.db");
// c = DriverManager.getConnection("jdbc:mysql://localhost:3306/titit","root","root");
script = c.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
System.out.println("Koneksi Sukses");
}catch( SQLException | ClassNotFoundException ex){
System.err.print(ex);
}
}
}
在我的 mainform 类中(第 23-46 行)
private void Tampil(){
try{
int row = tabel.getRowCount();
for(int i=0;i<row;i++){
tabeldata.delete(0, row);
}
String sql;
sql = "SELECT * from asu";
ResultSet rs = c.script.executeQuery(sql);
while(rs.next()){
DataPegawai d = new DataPegawai();
d.setNo(rs.getInt("no"));
d.setNip(rs.getInt("nip"));
d.setNama(rs.getString("nama"));
d.setDivisi(rs.getString("divisi"));
d.setLevel(rs.getInt("level"));
tabeldata.add(d);
}
}catch(SQLException e){
System.err.print(e);
}
}
【问题讨论】:
标签: java mysql sqlite netbeans jdbc