====== 도로명 주소찾기, 우편번호관리 ====== ===== 개요 ===== 도로명주소 안내시스템(http://www.juso.go.kr/) 연계를 통해 우편번호와 주소를 관리하고 **도로명 찾기** 기능을 팝업창으로 제공하여 우편번호 및 주소 등록 시 활용 할 수 있도록 하고 팝업화면을 호출할 수 있는 활용 예시를 제공한다. ===== 설명 ===== ==== 패키지 참조 관계 ==== 우편번호 패키지는 요소기술의 공통 패키지(cmm)에 대해서만 직접적인 함수적 참조 관계를 가진다. * 패키지 간 참조 관계 : [[egovframework:com:v2:init_pkg_dependency#시스템관리|시스템관리 Package Dependency]] ==== 관련소스 ==== ^유형^대상소스명^비고^ |Controller|egovframework.com.sym.ccm.zip.web.EgovCcmZipManageController.java|우편번호 관리를 위한 컨트롤러 클래스| |Service|egovframework.com.sym.ccm.zip.service.EgovCcmZipManageService.java|우편번호 관리를 위한 서비스 인터페이스| |Service|egovframework.com.sym.ccm.zip.service.EgovCcmRdnmadZipManageService.java|도로명주소 관리를 위한 서비스 인터페이스| |ServiceImpl|egovframework.com.sym.ccm.zip.service.impl.EgovCcmZipManageServiceImpl.java|우편번호 관리를 위한 위한 서비스구현 클래스| |ServiceImpl|egovframework.com.sym.ccm.zip.service.impl.EgovCcmRdnmadZipServiceImpl.java|도로명주소 관리를 위한 위한 서비스구현 클래스| |ServiceImpl|egovframework.com.sym.ccm.zip.service.impl.EgovCcmExcelZipMapping.java|우편번호 엑셀파일의 일괄 등록 처리를 위한 위한 서비스구현 매핑 클래스| |ServiceImpl|egovframework.com.sym.ccm.zip.service.impl.EgovCcmExcelRdnmadZipMapping.java|도로명주소 엑셀파일의 일괄 등록 처리를 위한 위한 서비스구현 매핑 클래스| |Model|egovframework.com.sym.ccm.zip.service.Zip.java|우편번호 정보 Model 클래스| |VO|egovframework.com.sym.ccm.zip.service.ZipVO.java|우편번호 관리를 위한 VO 클래스| |DAO|egovframework.com.sym.ccm.zip.service.impl.ZipManageDAO.java|우편번호 정보 관리를 위한 데이터처리 클래스| |DAO|egovframework.com.sym.ccm.zip.service.impl.RdnmadZipDAO.java|도로명주소 정보 관리를 위한 데이터처리 클래스| |JSP|/WEB-INF/jsp/egovframework/com/sym/ccm/zip/EgovCcmExcelZipRegist.jsp|우편번호 엑셀파일의 일괄 등록 처리를 위한 JSP 페이지| |JSP|/WEB-INF/jsp/egovframework/com/sym/ccm/zip/EgovCcmZipDetail.jsp|우편번호 상세보기를 위한 JSP 페이지| |JSP|/WEB-INF/jsp/egovframework/com/sym/ccm/zip/EgovCcmZipList.jsp|우편번호 목록을 위한 JSP 페이지| |JSP|/WEB-INF/jsp/egovframework/com/sym/ccm/zip/EgovCcmZipModify.jsp|우편번호 수정을 위한 JSP 페이지| |JSP|/WEB-INF/jsp/egovframework/com/sym/ccm/zip/EgovCcmZipRegist.jsp|우편번호 등록을 위한 JSP 페이지| |JSP|/WEB-INF/jsp/egovframework/com/sym/ccm/zip/EgovCcmZipSearchList.jsp|우편번호 찾기 팝업 내용을 위한 JSP 페이지| |JSP|/WEB-INF/jsp/egovframework/com/sym/ccm/zip/EgovCcmZipSearchPopup.jsp|우편번호 찾기 팝업을 위한 JSP 페이지| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovZipManage_SQL_mysql.xml|우편번호 MySQL용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovRdnmadZip_SQL_mysql.xml|도로명주소 MySQL용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovZipManage_SQL_cubrid.xml|우편번호 Cubrid용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovRdnmadZip_SQL_cubrid.xml|도로명주소 Cubrid용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovZipManage_SQL_oracle.xml|우편번호 Oracle용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovRdnmadZip_SQL_oracle.xml|도로명주소 Oracle용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovZipManage_SQL_tibero.xml|우편번호 Tibero용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovRdnmadZip_SQL_tibero.xml|도로명주소 Tibero용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovZipManage_SQL_altibase.xml|우편번호 Altibase용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovRdnmadZip_SQL_altibase.xml|도로명주소 Altibase용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovZipManage_SQL_maria.xml|우편번호 MariaDB용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovRdnmadZip_SQL_maria.xml|도로명주소 MariaDB용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovZipManage_SQL_postgres.xml|우편번호 PostgreSQL용 QUERY XML| |QUERY XML|resources/egovframework/mapper/com/sym/ccm/zip/EgovRdnmadZip_SQL_postgres.xml|도로명주소 PostgreSQL용 QUERY XML| |Validator Rule XML|resources/egovframework/validator/validator-rules.xml|Validator Rule을 정의한 XML| |Validator XML|resources/egovframework/validator/com/sym/ccm/zip/EgovZipManage.xml|우편번호 Validator XML| |Message properties|resources/egovframework/message/com/sym/ccm/zip/message_ko.properties|우편번호관리를 위한 Message properties(한글)| |Message properties|resources/egovframework/message/com/sym/ccm/zip/message_en.properties|우편번호관리를 위한 Message properties(영문)| ==== 관련테이블 ==== ^테이블명^테이블명(영문)^비고^ |우편번호|COMTCZIP|우편번호 정보를 관리한다.| ==== 환경설정 ==== 우편번호 엑셀파일 등록 기능을 활용하기 위하여 필요한 항목 및 그 환경 설정은 다음과 같다. === context-excel.xml === 우편번호 엑셀 파일을 등록하기 위하여 실행환경의 엑셀서비스 구현 클래스를 등록하여 사용한다.\\ 우편번호 등록을 위한 맵핑 클래스를 등록한다. === context-common.xml === 우편번호 엑셀 파일을 등록하기 위하여 파일 등록 처리를 사용한다. ===== 관련기능 ===== 우편번호 관련기능은 우편번호 주소찾기, 우편번호관리는 **우편번호 찾기**, **우편번호 목록조회**, **우편번호 등록**, **우편번호 엑셀파일 등록**, **우편번호 수정**, **우편번호 상세조회** 기능으로 구분된다. \\ 도로명 관련기능은 도로명 주소찾기, 도로명관리는 **도로명 찾기**, **도로명 목록조회**, **도로명 등록**, **도로명 엑셀파일 등록**, **도로명 수정**, **도로명 상세조회** 기능으로 구분된다. ==== 우편번호, 도로명 찾기 ==== === 비즈니스 규칙 === 우편번호 찾기 팝업 호출을 위하여 상기 환경설정까지 완료한 후 다음사항을 적용한다. === 관련코드 === N/A === 관련화면 및 수행매뉴얼 === 도로명 주소연계 서비스의 **우편번호/도로명** 찾기 팝업 호출을 위하여 EgovAdressPop.jsp 를 해당 페이지(EgovCcmZipRegist.jsp)에서 호출 한다. function goAddSearch() { var pop = window.open("","pop","width=570,height=420, scrollbars=yes, resizable=yes"); } 우편번호/도로명 주소를 사용할 값을 폼에 입력 후 위 샘플 소스처럼 호출 하여 사용한다. 우편번호는 5자리를 받고, '-'를 생략하여 받는다.\\ {{:egovframework:com:v3.7:sym:addr1.jpg|}} 조회: 조회하기 위해서는 상단의 검색창에 검색문자를 입력 후 {{:egovframework:com:v3.7:sym:addr2.jpg|}} 버튼을 클릭한다. ==== 우편번호/도로명 목록조회 ==== === 비즈니스 규칙 === 우편번호/도로명 목록은 페이지 당 10건씩 조회되며 페이징은 10페이지씩 이루어진다. 검색조건은 우편번호, 시도명, 시군구명, 읍면동명, 리건물명, 상세건물명(도로명)에 대해서 수행된다.\\ === 관련코드 === N/A === 관련화면 및 수행매뉴얼 === ^Action^URL^Controller method^QueryID^ |목록조회|/sym/ccm/zip/EgovCcmZipList.do|selectZipList|"ZipManageDAO.selectZipList"| | | | |"ZipManageDAO.selectZipListTotCnt"| 페이지 당 검색 범위를 변경하고자 하는 경우 context-properties.xml 파일의 pageUnit, pageSize를 변경한다.(단 해당 설정은 전체 공통서비스 기능에 영향을 미친다.) {{:egovframework:com:v3.9:sym:ccm:zip:addr3.png|}} 조회: 조회하기 위해서는 상단의 검색조건을 선택 후 해당하는 검색문자를 입력 후 조회 버튼을 클릭한다.\\ 일반주소 등록: 등록하기 위해서는 상단의 등록버튼을 통해서 **우편번호 일반주소 등록** 페이지로 이동한다.\\ 도로명주소 등록: 등록하기 위해서는 상단의 등록버튼을 통해서 **우편번호 도로명주소 등록** 페이지로 이동한다.\\ 일반주소 엑셀파일 등록: 우편번호 엑셀 파일의 양식을 이용하여 우편번호를 등록할 수 있는 페이지로 이동한다.\\ 도로명주소 엑셀파일 등록: 우편번호 엑셀 파일의 양식을 이용하여 우편번호를 등록할 수 있는 페이지로 이동한다.\\ 목록클릭: **우편번호 상세조회** 화면으로 이동한다.\\ {{:egovframework:com:v3.9:sym:ccm:zip:addr4.png|}} \\ 조회: 조회하기 위해서는 상단의 검색조건을 선택 후 해당하는 검색문자를 입력 후 조회 버튼을 클릭한다.\\ 일반주소 등록: 등록하기 위해서는 상단의 등록버튼을 통해서 **우편번호 일반주소 등록** 페이지로 이동한다.\\ 도로명주소 등록: 등록하기 위해서는 상단의 등록버튼을 통해서 **우편번호 도로명주소 등록** 페이지로 이동한다.\\ 일반주소 엑셀파일 등록: 우편번호 엑셀 파일의 양식을 이용하여 우편번호를 등록할 수 있는 페이지로 이동한다.\\ 도로명주소 엑셀파일 등록: 우편번호 엑셀 파일의 양식을 이용하여 우편번호를 등록할 수 있는 페이지로 이동한다.\\ 목록클릭: **도로명 주소 상세조회** 화면으로 이동한다.\\ ==== 우편번호 등록 ==== === 비즈니스 규칙 === 우편번호에 대한 상세내용을 등록한다. 등록이 성공하면 **우편번호 목록** 화면으로 이동한다. === 관련코드 === N/A === 관련화면 및 수행매뉴얼 === ^Action^URL^Controller method^QueryID^ |등록|/sym/ccm/zip/EgovCcmZipRegist.do|insertZip|"ZipManageDAO.insertZip"| {{:egovframework:com:v3.9:sym:ccm:zip:addr5.jpg|}} 목록: **우편번호 목록** 화면으로 이동한다. \\ 저장: 입력한 우편번호 정보들이 저장 처리된다. {{:egovframework:com:v3.9:sym:ccm:zip:addr6.jpg|}} 목록: **도로명 주소 목록** 화면으로 이동한다. \\ 저장: 입력한 도로명 정보들이 저장 처리된다. \\ ==== 우편번호 엑셀파일 등록 ==== === 비즈니스 규칙 === 등록이 성공하면 **우편번호 목록** 화면으로 이동한다. === 관련코드 === N/A === 관련화면 및 수행매뉴얼 === ^Action^URL^Controller method^QueryID^ |등록|/sym/ccm/zip/EgovCcmExcelZipRegist.do|insertExcelZip|"ZipManageDAO.deleteAllZip"| 다음의 우편번호 엑셀 파일의 양식을 이용하여 우편번호를 등록한다.\\ == 주소 목록 업로드 양식 == ^구분^샘플 업로드 양식파일 다운로드^ | 우편번호 엑셀양식 | {{:egovframework:com:v2:sym:zipcode.xls|우편번호 엑셀양식 다운로드}} | | 도로명주소 엑셀양식 | {{:egovframework:com:v2:sym:rdmnzipcode.xls|도로명주소 엑셀양식 다운로드}} | == 우편번호 및 주소 참고사이트 == ^구분^참고사이트^ | 우편번호 DB 다운로드 | http://www.epost.go.kr/search/zipcode/jibunAddressDown.jsp | | 도로명 주소 | http://www.juso.go.kr | === 도로명코드 엑셀양식 참조자료 === 도로명주소안내 사이트에서 **__대표지번__**으로 다운받으면 txt파일로 내려받게 된다.('|'(파이프) 구분자로 한 텍스트 포멧임) ^법정동^시도^시군구^읍명동^리^산여부^지번^본번^도로명코드^도로명^지하여부^건물번호[본번]^건물번호[지번]^건물명^상세건물명^건물관리번호^읍면동일련번호^행정동코드^행정동명^우편번호^우편번호일련번호^다량배달처명^ |1168010100|서울특별시|강남구|역삼동| |0|642|6|116803121022|논현로|0|507|0|성지하이츠3| |1168010100106420000000000|1|1168064000|역삼1동|135717|3|성지하이츠3차빌딩| 도로명주소 엑셀양식에 맞추어서 넣으면 된다. ^도로명코드^일련번호^시도^시군구^도로명^건물번호[본번]^건물번호[부번]^건물명^상세건물명^우편번호^등록ID^ |116803121022|1|서울특별시|강남구|논현로|507|0|성지하이츠3| |135717|SYSTEM| ※ 일변번호는 중복을 피하기 위한 일련번호로 1번부터 중복없이 순서대로 입력한다. === 우편번호/도로명 엑셀등록 === {{:egovframework:com:v3.9:sym:ccm:zip:addr7.jpg|}} 목록: 우편번호 목록 화면으로 이동한다. \\ 저장: 엑셀양식으로 입력한 우편번호 정보들이 저장 처리된다. {{:egovframework:com:v3.9:sym:ccm:zip:addr8.jpg|}} 목록: 도로명 목록 화면으로 이동한다. \\ 저장: 엑셀양식으로 입력한 도로명 정보들이 저장 처리된다. ==== 우편번호 수정 ==== === 비즈니스 규칙 === 수정이 성공하면 **우편번호 목록** 화면으로 이동한다. === 관련코드 === N/A === 관련화면 및 수행매뉴얼 === ^Action^URL^Controller method^QueryID^ |수정|/sym/ccm/zip/EgovCcmZipModify.do|updateZip|"ZipManageDAO.updateZip"| {{:egovframework:com:v3.9:sym:ccm:zip:addr9.jpg|}} 저장: 수정된 정보들이 저장 처리된다. \\ 목록: **우편번호 목록** 화면으로 이동한다. {{:egovframework:com:v3.9:sym:ccm:zip:addr10.jpg|}} 저장: 수정된 정보들이 저장 처리된다. \\ 목록: **도로명 목록** 화면으로 이동한다. ==== 우편번호/도로명 상세 조회 ==== === 비즈니스 규칙 === 상세조회에는 삭제 처리가 포함되어 있고 삭제가 성공하면 **우편번호 목록** 화면으로 이동한다. === 관련코드 === N/A === 관련화면 및 수행매뉴얼 === ^Action^URL^Controller method^QueryID^ |상세조회|/sym/ccm/zip/EgovCcmZipDetail.do|selectZipDetail|"ZipManageDAO.selectZipDetail"| |삭제|/sym/ccm/zip/EgovCcmZipRemove.do|deleteZip|"ZipManageDAO.deleteZip"| {{:egovframework:com:v3.9:sym:ccm:zip:addr11.jpg|}} 수정: 수정버튼 클릭 시 **우편번호 수정** 화면으로 이동한다. \\ 삭제: 삭제버튼 클릭 시 삭제여부를 확인하는 메시지를 보여주고 삭제처리를 할 수 있다.\\ 목록: **우편번호 목록** 화면으로 이동한다. {{:egovframework:com:v3.9:sym:ccm:zip:addr12.jpg|}} 수정: 수정버튼 클릭 시 **도로명 주소 수정** 화면으로 이동한다. \\ 삭제: 삭제버튼 클릭 시 삭제여부를 확인하는 메시지를 보여주고 삭제처리를 할 수 있다.\\ 목록: **도로명 주소 목록** 화면으로 이동한다. ===== 참고자료 ===== * 실행환경 참조 : [[egovframework:rte:fdl:excel]]