购物系统总结
这次把一个购物系统给实现。
前言:从今天开始,我一定要相信电脑提示的错误了,绝对不能相信我自己,特别是在查找错误的时候一定要根据myeclipse的控制台来看,哪里的错误人家都在那里写的非常的明显了!根据它显示的第几行去找,一定就是这几个错误的了。
今天碰到了一个错误:在显示“我的订单”的时候需要显示商品的名称,而由于我拿到的是这个订单所对应的商品的集合,所以需要把集合转变成字符串,所以使用了以下方法:
private String listToString(List<Prod> prodList) {
StringBuffer sb = new StringBuffer();
for(Prod p : prodList) {
sb.append(p.getProdName()).append(",");
}
String str = sb.toString();
str = str.substring(0,str.length()-1);
System.out.println(str);
return str;
}
出现了java.lang.StringIndexOutOfBoundsException: String index out of range: -1,原因就出现在
str = str.substring(0,str.length()-1)这一行,我在订单成功提交之后的页面又刷新了一次,又创建了一个新的订单号,但是却没有商品传过来(因为代码中当订单完成之后就会把购物车清空了,所以此时购物车中是为null),所以此时的str的长度其实是为null的,如果此时再对str进行截取字符串的操作的话,就会出现StringIndexOutOfBoundsException