读书人

急为什么小弟我查出来的值为空的时候就

发布时间: 2012-05-13 16:39:43 作者: rapoo

急急急急急急急!!为什么我查出来的值为空的时候就会报错。怎么判断是否为空 急

Java code
public String getCarType(String carNbr,String gyosyaCode) throws Exception{        // Hibernateのキャッシュ象        Session session = null;        String carType ;        try{            // キャッシュ象の初期化            session = this.getSession();            // SQL文を作成            StringBuffer selSql = new StringBuffer();            selSql.append(" SELECT                                                 \n");            selSql.append("  CAR_TYPE                                         \n");            selSql.append(" FROM                                                    \n");            selSql.append("  ADDN_CAR                                        \n");            selSql.append(" WHERE                                                     \n");            selSql.append("  DELETE_FLG <> '1'                                     \n");            // 索条件(番)が空でない合            if(carNbr != null && !"".equals(carNbr.trim())){                selSql.append(" and CAR_NBR = '" + carNbr + "' \n");            }            // 索条件(送者コド)が空でない合            if(gyosyaCode != null && !"".equals(gyosyaCode.trim())){                selSql.append(" and GYOSYA_CODE = '" + gyosyaCode + "' \n");            }            // デタベスからデタを取得            SQLQuery query = session.createSQLQuery(selSql.toString());            // 配送料金一索の合カウントを取得            carType = (query.list().get(0)).toString();        }catch(HibernateException e){            e.printStackTrace();            throw e;        }finally{            // 放キャッシュ            this.releaseSession(session);        }        // 果を返す        return carType;    }


在执行到carType = (query.list().get(0)).toString();时候如果没有数据就会报错

[解决办法]
如果list为空,你再get(0)肯定会出错啊。这样改一下:
List list = query.list();
if(list ==null || list.size == 0){
你的逻辑;
}else{
carType = list.get(0).toString();
}

[解决办法]
List list = query.list();
if(list.size()>0) {
carType = (query.list().get(0)).toString();
}else {
//....
}

读书人网 >J2EE开发

热点推荐