小白求解:Could not initialize class util.DBUtil

sinat_35181567 2016-06-04 11:19:58


这是我的 DBUtil类,数据库是MySQL,链接和查数据测试的时候都可以,但是转发JSP就挂了
package util;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

import org.apache.commons.dbcp.BasicDataSource;

/**
* 该类用来管理连接
* 数据库连接信息,保存在属性文件中
* 使用连接池获取连接
*/
public class DBUtil {

private static BasicDataSource ds;

static{
try {
//加载属性文件数据
Properties prop = new Properties();
prop.load
(DBUtil.class.getClassLoader().
getResourceAsStream
("db.properties"));
String driverclass = prop.getProperty("jdbc.driverclass");
String url = prop.getProperty("jdbc.url");
String user = prop.getProperty("jdbc.user");
String password = prop.getProperty("jdbc.password");
String strMaxActive
= prop.getProperty("dbcp.maxActive");
String strInitSize
= prop.getProperty("dbcp.initSize");
//实例化,并初始化连接池
ds = new BasicDataSource();
ds.setDriverClassName(driverclass);
ds.setUrl(url);
ds.setUsername(user);
ds.setPassword(password);
ds.setMaxActive
(Integer.parseInt(strMaxActive));
ds.setInitialSize
(Integer.parseInt(strInitSize));

} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException
("读取属性文件错误",e);
}
}

//2、创建连接
public static Connection getConnection()
throws SQLException{
return ds.getConnection();
}

//3、归还连接
public static void close(Connection conn){
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
throw new RuntimeException
("归还连接错误!",e);
}
}
}

//测试
public static void main(String[] args)
throws SQLException {
Connection conn = getConnection();
System.out.println
(conn.getClass().getName());
close(conn);
}
}

...全文
5555 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
reupe 2016-08-13
  • 打赏
  • 举报
回复
我把ojdbc14这个jar包导入到WEB-INF/lib下就解决了。或者用maven导入此jar包
  • 打赏
  • 举报
回复 1
因为你把db.properties放在了src/main/resource里面 所以要用DBUtil.class这个方法来获取它
街头小贩 2016-06-05
  • 打赏
  • 举报
回复

prop.load(DBUtil.class.getClassLoader().getResourceAsStream("db.properties"));
这行什么意思?你加载db.properties好了,为什么要用DBUtil的类加载器

10,607

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 其他
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧