謹慎使用java的try catch
來源:程序員人生 發布時間:2015-04-07 08:14:47 閱讀次數:3492次
看看下面代碼有何問題:
public static String writeFileToRemote(File file) throws Exception {
PostMethod filePost = new PostMethod(Common.getInstance().getProperty(
"project/remoteFileServer")
+ "/attach?action=upload");
try {
Part[] parts = new Part[4];
parts[0] = new StringPart("FILE_KIND", "2");
parts[1] = new StringPart("RECORD", "true");
parts[2] = new StringPart("FILE_KIND", "2");
parts[3] = new FilePart("FILE_PATH", file.getName(), file);
filePost.setRequestEntity(new MultipartRequestEntity(parts,
filePost.getParams()));
HttpClient client = new HttpClient();
// 由于要上傳的文件可能比較大,因此在此設置最大的連接超時時間
client.getHttpConnectionManager().getParams().setConnectionTimeout(
5000);
int status = client.executeMethod(filePost);
String file_path = "";
if (status == HttpStatus.SC_OK) {
// 從
服務器響應的串中獲得fileId
String res = filePost.getResponseBodyAsString();
String retFileStr = "retobj.fileId = "";
res = res.substring(res.indexOf(retFileStr)
+ retFileStr.length());
file_path = res.substring(0, res.indexOf('"'))
.replace('|', '/');
}
file.delete();
return file_path;
} catch (Exception e) {
e.printStackTrace();
throw new Exception("寫遠程文件時出現異常!");
}
}
報錯:
Caused by: java.lang.Exception: 寫遠程文件時出現異常!
com.age.sale.view.tool.ImportTool.writeFileToRemote(ImportTool.java:112)
此時根本沒法定位毛病!
因此,應當把try catch去掉,如果要catch,必須把報錯信息記錄下來!并顯示到前臺!由于查詢日志是很麻煩的1件事情。
本文出自:ouyida3的csdn blog
2015.3.5
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈