我试图在j2ee项目中与sqlite数据库建立连接,但我不断收到此错误" ERROR [stderr](EJB default -8)java.lang.ClassNotFoundException:org.sqlite。 JDBC&#34 ;.知道我在java程序中测试该方法,并且工作正常。 我在ejb项目(会话bean)中有一个连接类,这里有代码。
public Connection getConnection(){
Connection connection= null;
try {
Class.forName("org.sqlite.JDBC");
String dataFolder = System.getProperty("user.home") + "\\AppData\\Local";
String b = System.getProperty("user.home") ;
String file = b + "\\Desktop\\file";
connection = DriverManager.getConnection("jdbc:sqlite:"+ file );
System.out.println("Connection completed.");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
然后我在java项目中使用junit test测试它,但每次我得到相同的错误:java.Lang.ClassNotFoundException:org.sqlite.JDBC PS:我已经像这样包含sqlite.jar(右键单击项目 - >配置构建路径 - > library->添加外部jar)但总是面临同样的错误
答案 0 :(得分:1)
我已经修复了问题:
在此路径中添加了 SQLite jar文件:
d:\ jboss-as-7.1.1.Final \模块\的javax \激活\ API \主
JBoss Server Runtime > 部署> 管理部署添加了 SQLite jar文件,然后启用它。
答案 1 :(得分:0)
假设您有以下项目结构:
src/main/java
|
- MyConnection.java
src/test/java
|
- MyConnectionTest.java
使用以下元素:
基类MyConnection
public class MyConnection {
public Connection getConnection() {
Connection connection = null;
try {
Class.forName("org.sqlite.JDBC");
connection = DriverManager.getConnection("jdbc:sqlite:");
System.out.println("Connection completed.");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
}
测试班MyConnectionTest
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.sql.Connection;
import java.sql.SQLException;
import org.junit.Test;
public class MyConnectionTest {
@Test
public void isValid() throws SQLException {
MyConnection myConn = new MyConnection();
Connection conn = myConn.getConnection();
assertTrue(conn.isValid(0));
conn.close();
assertFalse(conn.isValid(0));
}
}
在Eclipse项目中,您只需执行以下操作:
MyConnectionTest
测试类并将其作为JUnit测试运行。