2
我正在使用AWS java SDK在AWS管理控制檯的存儲桶上上載文件。但是,如果我第一次嘗試訪問它時沒有在線文件,我的代碼將捕獲異常(NoSuchKey)。然後我想關閉連接。問題是我沒有任何引用關閉該連接,因爲例外(原始引用將爲空)。這裏是我的代碼:如果在查詢中沒有這樣的密鑰,則關閉AWS連接
S3Object object = null;
GetObjectRequest req = new GetObjectRequest(bucketName, fileName);
try{
logconfig();
object = s3Client.getObject(req);
...
catch(AmazonServiceException e){
if(e.getErrorCode().equals("NoSuchKey"))
我試圖用「對象」作爲參考來結束我的Eclipse和AWS之間的聯繫,但顯然「對象」爲空當異常發生。 任何人都可以告訴我該怎麼做嗎? 此外,因爲我不能關閉連接,我的控制檯都會有這樣每60秒警告:
8351167 [java-sdk-http-connection-reaper] DEBUG org.apache.http.impl.conn.PoolingClientConnectionManager - Closing connections idle longer than 60 SECONDS
我不認爲你需要做的任何連接處理自己。這由圖書館照顧。您只需調用's3client'中的API。 – RandomQuestion
如果實現Closable(),則應該調用close()給對象。否則可能會發生資源泄漏。 – AMing