我的 sql语句是:select count(0) from table1 t1,table2 t2 where t1.bgsbh is not null and t1.sydwxzq='411201' and t1.azxs='整装' and t1.bgsxh=t2.bgsxh and t2.jjrq>=convert(datetime,'2012-01-01',120)  下面是我调用的方法:
public int getCount(String sql) {  int k = 0;  Connection con = DBConnection.getInstance().getConn();  QueryRunner qr = new QueryRunner();  List list = (List) DBConnection.getInstance().query(con, sql, null,    new MapListHandler());  DBConnection.getInstance().closeConn(con);  HashMap objHs = (HashMap) list.get(0);  k = Integer.parseInt(objHs.get("count(0)").toString());  return k; }但是问题出现了:我用debug模式走的时候得到的list值是:[{=362}],所以在  k = Integer.parseInt(objHs.get("count(0)").toString());回报空指针异常????这个我就搞不明白为什么了,直接用查询分析器查能得到值。 sql语句也没错,,说明sql语句没错。

解决方案 »

  1.   

     select count(0) as 别名 ....
    k = Integer.parseInt(objHs.get("别名").toString());
      

  2.   

    你先测试一下直接使用objHs.get("count(0)")能否拿到值,一定要确定你的list里面是有值的
      

  3.   

    select count(0) as 别名 ....
    k = Integer.parseInt(objHs.get("别名").toString()); 这个试试看
      

  4.   


    晕  select count(0) 查出来的根本就是无列名,需要给一个别名