요번 지역 기반 맛집 추천 웹 서비스 프로젝트에서 수행한 기능은 CSV 파일 업로드 및 데이터 적재를 다루었습니다.
먼저 CSV 파일 업로드를 한번도 해보지 않았던 기능이었기에 더욱 새로웠습니다.
아래는 각 시 군구 에 대한 위도 경도 가 포함 된 CSV 파일 데이터 입니다.

위 데이터는 본 프로젝트 내 맛집 조회를 위해서 필요로 한 데이터 입니다. 프로젝트를 수행하면서 유저스토리를 간단하게 말씀드리면 사용자에 대한 위치를 기준으로 주변 근처 맛집 , 특정 지역 보기 등 을 위해 각 시군구에 대한 위도 경도가 필요하기 때문에 데이터가 필요로 하였습니다.
데이터의 총 개수는 294개 이며 제일 중요한 위도 경도 는 변할 일이 없다고 생각 하여 데이터를 서버 내 적재하는 걸 선택 하였습니다. 맨 처음에는 데이터를 데이터베이스에 저장을 선택 하였지만, 각 데이터가 필요로 할때마다 서버 비용도 증가 할 뿐더러, 불 필요한 자원의 낭비가 많이 생길거라 생각이 들었습니다.
이후 당장 필요로 하는 CSV 파일을 읽어오기 위하여 테스트 코드 를 작성하며 읽어오는 기능을 학습하고 만들었습니다.
CSV 파일을 읽어오기 위해 resouces/*.csv 안에 저장하였다.
resources 패키지에 넣는게 맞다고 생각하여 저장하였습니다.
@ParameterizedTest
@CsvFileSource(resources = "/sgg_lat_lon.csv", numLinesToSkip = 1)
void csv파일을_정상적으로_읽어온다(String dosi, String sgg, String lat, String lon) {
Assertions.assertNotNull(dosi);
Assertions.assertNotNull(sgg);
Assertions.assertNotNull(lat);
Assertions.assertNotNull(lon);
}
헤더 까지 읽어오는 걸 확인 할 수 있었기에 실제 코드를 쓸때 크게 에러 없이 잘 해결할 수 있었다.