查找出的细节bug

1.批量导入总是少1条数据,多线程导入,少得梳理跟线程数一样
忘记 conn.setAutoCommit( true);

conn.setAutoCommit(false);
Object[] parmas = list.toArray();
ps = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS );
qr.fillStatement(ps, parmas);
ps.executeUpdate();
conn.commit();



2.逻辑判断遭遇null转换字符串
由于return (obj == null) ? "null" : obj.toString();

// public static String valueOf(Object obj) {
// return (obj == null) ? "null" : obj.toString();
// }
System.out.println(StringUtils. isEmpty(String. valueOf((Object) null)));----false
// public static String valueOf(char data[]) {
// return new String(data);
// }
System.out.println(StringUtils. isEmpty(String. valueOf(null));---报错

System.out.println(StringUtils. isEmpty((String) null))---true


3.多线程里面框架执行
while(!service.isTerminated()){
}
代码属性执行到这,死循环卡主,并且不会跳过此段代码执行下面的

4.类似limit1,10与 id>1 and id<10的错误使用,使用以下方法,却传递
xtractRuleProcess.getAllCotentsExtract(preFileName,start,end)

public static List<Map<String, String>> getAllCotentsExtract(
String preFileName, int start, int length)
throws FileNotFoundException, IOException {
File[] files = new File[length];
for (int i =0; i <length; i++) {
files[i] = new File(preFileName +(start+i)+".html");
}
List<Map<String, String>> listMaps = new ArrayList<Map<String, String>>(
files.length);
for (File f : files) {
if (f.exists()) {
FileInputStream inputStream = new FileInputStream(f);
String html = IOUtils.toString(inputStream, "UTF-8");
try {
listMaps.add(getOriginMapByHtml(html));
inputStream.close();
} catch (Exception e) {
System.out.println(f.getName());
e.printStackTrace();
}
}
}
return listMaps;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值