[Spring][13]API Practice[API 실습, test]
BackEnd/Spring

[Spring][13]API Practice[API 실습, test]

목차

- Api 실습 

 


API 실습

 

도로명주소 API를 활용하고 실습해봅시다

 

JSP 가이드 및 소스 다운로드

 

다운한 폴더

 

sample안에 두개의 jsp가 있습니다

 

test폴더에 jsp파일을 추가합니다

 

*

아래에 중요한 것들이 있습니다!

 

테스트할 때 환경이 달라질 수 있기 때문에

여러 가지를 염두에 두고 테스트를 해야 합니다.

 

테스트할 때

개발자들이 mac을 쓰는 이유는

해외에 수많은 개발자들이 mac을 사용하기 때문입니다.

 

바로 배포나 개발을 할 때 mac이라는 개발환경이 다르기 때문입니다.

그래서 전 세계에 어디에서나 호환이 가능하도록 mac이라는 개발환경을 사용하는 것입니다.

(-> 개발환경이 다름)

 

항상 테스트할 때는 동일한 환경에서 테스트해보는 습관을 들입시다.

(인터넷 강의에서 어떤 환경을 설정할 때 동일하게 해 보자,

개념이 잡히면 처음에 환경 설정을 할 때 이해가 안 되더라도 개념이 잡히면 모두 이해 가능하다.)

 

 

개념 다잡으면 바꾸는 건 정말 쉽습니다.

(개념 공부 착실히!)

*

 

테스트를 위해서 dynamic web project생성

 

Web Project 생성

 

jsp Dynamic Web Project에는 server가 내장되어 있지 않기 때문에 톰켓을 설치해줍니다.

 

 

톰켓 9 선택

톰캣 설치!

 

shutdown port => 외부 셧다운

 

 

*

나중에 리눅스로 배포할 때 스프링은 톰켓이 내장되어 있어서 정말 편합니다.

*

 

New Runtime으로 apache 연결

 

아파치 경로 설정

 

 

Web Dynamic Project는 기존의 Spring Perspective와 다릅니다

 

이제 juso dynamic web project 가 생성된 것을 확인할 수 있습니다.

 

아까 sample을 복사해줍니다

 

위와 같이 아까 다운로드한 jsp를 복사해줍니다.

 

 

Tomcat Server 9설정

 

Chrome으로 설정해두면 편합니다

 

실행을 해보면 아래와 같이 Sample.jsp 파일의 화면이 뜹니다.

 

jusoPopup으로 contextpath 생략

 

그러나 팝업 버튼을 누르면 오류가 뜹니다.

오류가 뜨는 이유는 context path를 우리가 지정을 안 해줘서입니다.

 

 

path를 바꿔줍니다

 

 

내장 톰켓이 내부 모든 프로젝트를 관리합니다.

그래서 콘텍스트 path로 지정해줘야 내부 서버가 찾아냅니다.

 

위의 url과 아래의 contextpath와 맞춰야 팝업이 실행됩니다.

 

*

-> 이런 것 하나하나를 모르면 서버 배포를 하지 못함

*

 

Sample.jsp로 가서 url을 /jusoPopup.jsp -> /juso/jusoPopup.jsp으로 바꿔줍니다

 

 

pop의 URL 앞에 /juso가 붙은 모습

 

이렇게 하면 정상적으로 팝업이 뜹니다.

 

그 이유는 바로 내장 톰켓에서 자동으로 생성해준

contextPath (프로젝트명) /juso와 맞춰서 Url을 요청하기 때문에

정상적으로 팝업이 뜨게 되는 것입니다.  

 

 

이제 오류는 안뜨네요, 키를 넣어줍시다

 

/juso/jusoPopup

 

 

이제 승인키를 넣어줍시다

 

 

승인키를 넣고나서 제대로 실행되는 모습

 

주소를 넣어보면 아래와 같이 한글이 깨지네요.

UTF-8 설정을 해줘야 합니다.

 

 

글씨가 깨지는모습

 

UTF-8, jusoPopup.jsp

 

제대로 들어가는 모습

 

이제 필요한 값만 남기고 다 지워줍니다.

 

name값을 지정해서 form태그로 보낼 수 있게합니다

 

 

덕지덕지 붙은 것들을 다 지워주고 필요한 것만 남깁니다.

 

 

깔끔하게 필요한 것만 남긴다

 

nameaddress를 맞춥니다.

아래의 jusoCallBack 함수의 roadFullAddr의 값이 매개 변숫값이 들어가서

addressvalue 값으로 들어가게 됩니다.

 

*

form 밑의 address, value값 

*

 

CallBack함수가 address에 값을 넣어줍니다

 

 

값을 이제 받으면 아래의 jusoCallBack의 함수가 실행이 됩니다.

 

jusoCallBack으로 들어가는 매개변수들이 보이는데, 빨간색 박스부터는 

우리가 쓰지 않는 값들이 들어있어서 아래처럼 깔끔하게 지워줍니다.

 

 

필요한 값만 남긴다

 

 


Reference

 

https://www.juso.go.kr/addrlink/devAddrLinkRequestGuide.do?menu=roadApi 

 

도로명주소 API | 도로명주소 개발자센터

팝업 API 최신 도로명주소를 별도 개발없이 검색/활용할 수 있는 웹기반 UI가 제공됩니다. 검색 API ※ 검색API 적용시 "검색어필터링 적용 예시보기" 확인하여 필터링을 꼭 적용해 주시기 바랍니다

www.juso.go.kr

 

https://tomcat.apache.org/download-90.cgi

 

Apache Tomcat® - Apache Tomcat 9 Software Downloads

Welcome to the Apache Tomcat® 9.x software download page. This page provides download links for obtaining the latest version of Tomcat 9.0.x software, as well as links to the archives of older releases. Unsure which version you need? Specification version

tomcat.apache.org