pojo 里面对应表的属性为Integer,数据库表字段某一字段指定可以为空,不给该属性赋值,当用insert语句添加数据进入该表时,报空指针异常,是为什么?
Servlet给该对象设值:
Productorderitem productorderitem = new Productorderitem();
productorderitem.setProductorderitemNumber(Integer.parseInt(product_number));
productorderitem.setProductorderitemSize(ProductSizeUtil.getSizeByString(product_size));
productorderitem.setProductorderitemPrice(product.getProductPrice());
productorderitem.setProductorderitemProductId(Integer.parseInt(productId));
dao层实现类的方法代码:
public boolean insertProductorderItem(Productorderitem productorderitem, Connection conn) throws Exception {
String sql = "insert into productorderitem(productorderitem_number,productorderitem_size,productorderitem_price,productorderitem_product_id,productorderitem_order_id,productorderitem_user_id,productorderitem_userMessage) values(七个?)";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, productorderitem.getProductorderitemNumber());
ps.setInt(2, productorderitem.getProductorderitemSize());
ps.setDouble(3, productorderitem.getProductorderitemPrice());
ps.setInt(4, productorderitem.getProductorderitemProductId());
ps.setInt(5, productorderitem.getProductorderitemOrderId());
ps.setInt(6, productorderitem.getProductorderitemUserId());
ps.setString(7, productorderitem.getProductorderitemUserMessage());
int row = ps.executeUpdate();
if(row>0){
return true;
}
DBHelper.closePreparedStatement(ps);
return false;
}