Development/Language

[Java] 원격파일 유효여부 체크

비완 2024. 3. 6. 14:11
반응형

 

백엔드 개발중 파일 생성스케쥴을 걸어놓는 경우가 생겼다.

해당 파일을 프론트에서 다운을 받아야 하기에, 처음에는 아래 로직으로 체크한 후 다운을 받게 구현하였다.

String addr = "파일경로";

for (int idx = 0; idx < 10; idx++) {
    Thread.sleep(500);
    File f = new File(addr)
    if (f.exists()) {
    	break;
    }
}

 

서버에 파일이 존재하는 경우에는 별다른 문제없이 정해진 시간동안 기다면서 중간중간 체크하여 문제없이 동작하였는데,

파일이 원격에 존재하는 경우에는 항상 없는 것으로 체크하는 현상이 발견되었다.

 

이 문제를 아래와 같이 URLConnection을 이용하여 조치하였다.

String addr = "파일주소";

for (int idx = 0; idx < 30; idx++) {
    Thread.sleep(2000);
    url = new URL(addr);
    URLConnection con = url.openConnection();
    HttpURLConnection res = (HttpURLConnection) con;
    
    if (res.getResponseCode() == 200) break;
}
반응형

'Development > Language' 카테고리의 다른 글

순열, 조합, 중복순열  (0) 2022.12.29
Python 반올림 오류 해결  (0) 2020.04.30
빈값 체크  (0) 2019.10.31
HttpClient timeout 설정  (0) 2019.10.14
문자열 중복 찾기  (0) 2019.09.26