provider 조회와 명시적 close가 작업 수명을 만든다
export 호출마다 새 prototype을 얻고 try-with-resources가 사용 완료 시점을 소유한다.
호출자가 작업 객체 수명을 소유
1export 시작
ObjectProvider.getObject 호출
2새 ExportJob
의존성 주입과 초기화 완료
3batch write
현재 작업 상태만 보관
4try 종료
호출자가 job close