본문 바로가기
728x90

개발일기3

Spring Boot로 엑셀 파일 파싱 및 주소 기반 데이터 조회 처리하기 엑셀 파일을 통한 대량의 데이터를 처리하는 기능은 다양한 서비스에서 매우 유용하게 사용됩니다. 이번 포스트에서는 Spring Boot로 엑셀 파일을 업로드하고, 그 데이터를 데이터베이스에 저장하는 과정을 함께 살펴보겠습니다. 이 기능은 주로 관리자가 다수의 건물 정보를 한 번에 업데이트해야 할 때 활용됩니다.엑셀 파일 업로드 흐름엑셀 파일 업로드의 흐름은 다음과 같이 진행됩니다:엑셀 파일 업로드 요청: 클라이언트에서 엑셀 파일을 업로드합니다.엑셀 파일 파싱: 업로드된 엑셀 파일의 내용을 읽어들여 각 셀의 값을 처리합니다.주소 정보 매핑 및 데이터베이스 조회: 엑셀 파일에 포함된 주소 데이터를 기반으로 추가 정보를 조회하여 건물 번호를 확인합니다.데이터 저장: 파싱된 데이터를 데이터베이스에 삽입 또는 업데.. 2024. 10. 18.
네이버 검색 API와 도로명주소 API를 이용한 검색 서비스 구축 최근 많은 서비스들이 위치 기반 검색 기능을 필요로 합니다. 도로명주소나 네이버 검색 API 같은 공공 데이터와 결합하면 더 유용한 정보를 제공할 수 있는데요, 이번 포스트에서는 네이버 검색 API와 도로명주소 API를 활용하여 키워드를 통해 도로명 주소를 검색하고, 이를 좌표로 변환하는 과정을 Java로 구현한 예제를 소개해드리겠습니다.1. 네이버 및 도로명주소 API 키 발급먼저 네이버 개발자 센터와 도로명주소 API에서 각각 API 키를 발급받아야 합니다. 네이버 검색 API는 ClientId와 ClientSecret을, 도로명주소 API는 ROAD-CONFMKEY와 COORD-CONFMKEY 키를 발급받아야 합니다. 이 키들은 API 요청을 인증하는 데 필수입니다.String clientId = .. 2024. 10. 17.
빅오(Big-O) 표기법 빅오알고리즘의 성능을 수학적으로 표현해주는 표기법시간과 공간복잡도를 표현할수 있다데이터나 사용자의 증가율에 따른 알고리즘의 성능을 예측하는게 목표 (상수는 무시)O(1)F(int[] n){ return (n[0] == 0)? true:false;}입력 데이터 크기의 상관없이 일정한 시간이 걸리는 알고리즘인자로 받는 배열 값이 얼마나 큰지 상관없이 일정한 속도로 반환한다O(n)F(int[] n){ for i = 0 to n.length print i }입력데이터 크기에 비례해서 처리시간이 걸리는 알고리즘n개의 데이터를 받으면 n번 루프돌아서 n이 1씩 늘어날때마다 처리가 한번씩 늘어난다O(n²)F(int[] n){ for i = 0 to n.length for j .. 2023. 7. 24.
728x90