日期:2014-05-17  浏览次数:20733 次

commons dbutils使用出现的问题
程序片段----------------------------------------
DataSource ds = null;
try {
Context context = new InitialContext();
ds = (DataSource) context.lookup("java:/comp/env/jdbc/mysqlds");
} catch (Exception e) {
System.out.println("获取数据源时出错");
}
int result = 0;

try {
String sql = "insert into blog (title,content,category_id,createdtime) values (?,?,?,now())";
String params[] = { title, content, categoryId };
QueryRunner qr = new QueryRunner(ds);
result = qr.update(sql, params); // query()
} catch (SQLException e) {
e.printStackTrace();
}
-----------------------------------------------------------
1,commons dbutils 包已经引入
2,数据源连接没有问题
3,数据库连接没有问题
4,一用这个组件就报如下错误
  java.lang.NoClassDefFoundError: org/apache/commons/dbutils/QueryRunner

琢磨了好几天还是没有搞出来,希望高手们指点。
 

------解决方案--------------------
java.lang.NoClassDefFoundError: org/apache/commons/dbutils/QueryRunner 

很显然的找不到类

绝对是包的问题,好好看看,是不是少了东西;

依上面的看,
org/apache/commons/dbutils/下的QueryRunner找不到 应该是你使用的包版本问题
------解决方案--------------------
肯定是版本的问题
------解决方案--------------------
是不是没有数据?为空得时候再转化就会这样
------解决方案--------------------
java.lang.NoClassDefFoundError: org/apache/commons/dbutils/QueryRunner 
就是你的包没在classpath里,其他什么要查,先查一下你的classpath吧
------解决方案--------------------
我也遇到了上面的问题,我把那几个包都加进去了还是不行
------解决方案--------------------
把commons-dbutils-1.2.jar包拷到项目下的lib目录下面就行了,我就是这样解决了
------解决方案--------------------
9楼说得对,我也是按这样的操作解决的.
------解决方案--------------------
探讨
把commons-dbutils-1.2.jar包拷到项目下的lib目录下面就行了,我就是这样解决了

------解决方案--------------------
哈哈哈 我遇到这问题,我也是跟ls的一样 也是把jar包 放到lib 下的 ok 哦
------解决方案--------------------
探讨

在开关导入org.apache.commons就可以了,既:import org.apache.commons.*;