写程序也有不少时间了每次写完一个方法,总发现里面用来判断各种错误可能性的代码占据了大部分尤其是在web程序里面,很多东西都依赖用户的request里面包含了哪些东西来进行下一步即使很多地方都封装的很好了,但是最终出现的代码还是类似下面这样
if(workbook==null) {
Common.err("文件损坏,无法读取");
return;
}
if(workbook.getNumberOfSheets()<1) {
Common.err("找不到工作簿");
return;
}
HSSFSheet sheet = workbook.getSheetAt(0);
if(sheet==null) {
Common.err("无法读取第一个工作簿");
return;
}
int rowCount = sheet.getPhysicalNumberOfRows();
if(rowCount<2) {
Common.err("表格内至少要有两行");
return;
}
这个是我以前写的处理一个用户上传Excel的部分代码,还不包含用户登录判断、session是否有效
每个if里面的可能性都是有可能出现的,也就是,每个if都是有必要的
但是整个业务逻辑,绝大多数行都成了这种一个个if,每个if要3行,加起来也不少了
要说问题,这也不是问题,但是总隐约感觉这是个大问题。大家有什么解决办法么?或者说有什么想法么?
if(workbook==null) {
Common.err("文件损坏,无法读取");
return;
}
if(workbook.getNumberOfSheets()<1) {
Common.err("找不到工作簿");
return;
}
HSSFSheet sheet = workbook.getSheetAt(0);
if(sheet==null) {
Common.err("无法读取第一个工作簿");
return;
}
int rowCount = sheet.getPhysicalNumberOfRows();
if(rowCount<2) {
Common.err("表格内至少要有两行");
return;
}
这个是我以前写的处理一个用户上传Excel的部分代码,还不包含用户登录判断、session是否有效
每个if里面的可能性都是有可能出现的,也就是,每个if都是有必要的
但是整个业务逻辑,绝大多数行都成了这种一个个if,每个if要3行,加起来也不少了
要说问题,这也不是问题,但是总隐约感觉这是个大问题。大家有什么解决办法么?或者说有什么想法么?
if(workbook==null) {
Common.err("文件损坏,无法读取");
return;
}
if(workbook.getNumberOfSheets()<1) {
Common.err("找不到工作簿");
return;
}
合成:
if(workbook==null && wordbook.getNumberOfSheets() < 1) {
Common.err("找不到工作簿");
return;
}
用javaBean的话,很多地方都用不着判断是否为null。
javaBean是什么东西?框架还是什么?貌似不是概念吧。还是我见识不够?请指教。
就是指望能有现成的东西来解决。不过似乎这种东西没什么好的解决办法,不管是放在业务逻辑里面还是集中提取出来成为一个框架,都是起码要判断一次的。也许能够指望的,只有编程语言的发展了吧。不过还是指望能有研究过这类问题的人发表点意见,能有现成的解决方案最好了