1. 데이터 load

 - http://www.juso.go.kr/notice/OpenArchivesList.do?currentPage=2&countPerPage=10&&searchType=&keyword=&noticeKd=26&type=matching

 - 대표지번 우편번호 포함된 자료를 다운 받는다.

 - 스키마 및 인덱스를 적당히 먹인다.

 - oracle의 경우 sqlloder로 쭉 올린다. (약 600만건)


2. 주소 쿼리

SELECT    zipcode,
                sido_nm

       || ' '

       || sigun_nm

       || ' '

       || court_dong_nm

       || DECODE (court_lee_nm, '', '', ' ' || court_lee_nm)

       || ' '

       || gee_boun

       || DECODE (gee_boo, '0', '', '-' || gee_boo)

       || DECODE (building_nm, '', '', ' ' || building_nm) AS dong_addr,

          sido_nm

       || ' '

       || sigun_nm

       || ' '

       || load_nm

       || DECODE (grave_yn, '1', ' 지하', '2', ' 상공')

       || ' '

       || building_boun

       || DECODE (building_boo, '0', '', '-' || building_boo)

       || DECODE (court_lee_nm,

                  '', ' ('

                   || court_dong_nm

                   || DECODE (deli_nm,

                              '', DECODE (building_nm,

                                          '', '',

                                          ', ' || building_nm

                                         ),

                              ', ' || deli_nm

                             )

                   || ')'

                 ) AS load_addr

  FROM road_addr

 WHERE sido_nm = 'ㅇㅇ시'

   AND sigun_nm = 'ㅇㅇ구'

   AND (court_dong_nm LIKE 'ㅇㅇ동%' OR adm_dong_nm LIKE 'ㅇㅇ동%')


3. 입력값 분석

  - detail1은 동/도로명 등

  - detail2 는 번지 앞자리/건물번호 앞자리

  - detail3는 - 이후의 번지 뒷자리/건물번호 뒷자리


String searchValue      = zipCodeForm.getSearchValue().replaceAll(" ", "");

String detail1 = searchValue.replaceAll("[0-9]*(-?)[0-9]+(-?)$", "");

String detailTmp         = searchValue.replaceAll(detail1, "");

String detail2 = detailTmp.replaceAll("([0-9]*)(-?)([0-9]*)$", "$1");

String detail3 = detailTmp.replaceAll("([0-9]*)(-?)([0-9]*)$", "$3");


'Project' 카테고리의 다른 글

프로세스 강제 종료 명령  (0) 2013.03.29
jad 사용법 (하위 폴더까지 디컴파일)  (2) 2012.06.12
sql injection tool  (1) 2011.09.21
ant builder sample xml  (2) 2011.06.15
Eclipse Plugin url list  (8) 2011.05.19