JAVA
[JAVA] 자동리소스 닫기
최강깜시
2018. 8. 2. 15:52
JAVA 7 버전이후 부터 추가된 항목으로
java.lang.AutoCloseable 사용한 객체들은 close() 없이 자동을 안전하게 리소스를 닫아 준다.
예를 들어 poi의 XSSFWorkbook 의 경우
JAVA 6에서는
XSSFWorkbook workbook = null;
try {
workbook = XSSFWorkbook(upFileStream);
...
} finally {
workbook.close();
}
이렇게 객체를 해제해 줘야 했으나 JAVA 7부터는
XSSFWorkbook workbook = null;
try {
workbook = XSSFWorkbook(upFileStream);
...
} finally {
}
Close 없이 자동 해제됩니다.
XSSFWorkbook API를 보면
org.apache.poi.xssf.usermodelClass XSSFWorkbook
- java.lang.Object
- org.apache.poi.ooxml.POIXMLDocumentPart
- org.apache.poi.ooxml.POIXMLDocument
- org.apache.poi.xssf.usermodel.XSSFWorkbook
저 부분이 보일겁니다~