Servlet中的空指针异常

时间:2011-04-03 18:35:46

标签: java mysql resultset

我正在设计一个购物servlet的问题。当我尝试设置这样的订单对象时,我不断收到空指针异常:

           int ccn=customer.getCcn();
            OrderList.Order order=null;
    ResultSet set=helper.selectOrder(custId);
    try{
        while (set.next()){
            orderno=set.getInt(1);
            orderDate=set.getString(2);
            shipDate=set.getString(3);
            custId=set.getString(4);
            order=list.new Order(orderno,custId,ccn);
            list.addOrder(order);

        }
        set.close();}
        catch(Exception e){
            System.out.println(e.getMessage());
        }

但如果我这样做,那么例外就会消失......但我的列表中却充满了重复。

            int ccn=customer.getCcn();
    ResultSet set=helper.selectOrder(custId);
    try{
        while (set.next()){
            orderno=set.getInt(1);
            orderDate=set.getString(2);
            shipDate=set.getString(3);
            custId=set.getString(4);
        }
        set.close();}
                    OrderList.Order order=list.new Order(orderno,custId,ccn);
                    list.addOrder(order);
        catch(Exception e){
            System.out.println(e.getMessage());
        }

任何帮助?

1 个答案:

答案 0 :(得分:0)

这是一个粗略的,没有受过教育的(如果可以这么说)猜测,所以这里就是。

如果list 肯定不为空,那么最简单的方法是直接在列表中添加新订单,如下所示:

while (set.next()){
    orderno=set.getInt(1);
    orderDate=set.getString(2);
    shipDate=set.getString(3);
    custId=set.getString(4);
    list.addOrder(list.new Order(orderno,custId,ccn));
}