json 5

공공 데이터 4강. 파싱(2)

파싱을 쉽게 도와주는 사이트도 있지만, 처음에는 직접 전송받아올 오브젝트를 만들어보자. 생성자와 getter, setter도 필요하지만 우선 필드 선언부터 해줄것이다. gson이 인식할 때 무조건 타입이 일치해야 하는데 스트링은 어떤 타입도 다 받을 수 있다. 무적임! 어차피 문자열로 날아오니까!! 개발계정의 상세보기에 들어가서 스크롤을 내리면 요청 변수라는 것이 있다. 요청 변수에 쿼리 스트링의 키 값들과 정보들이 나와있다. 여기 항목에 옵션과 필수 항목이 나누어져 있는 것을 볼 수 있다. * serviceKey는 디폴트 값이라 안 나와있어도 꼭 적어줘야 함! * 모든 항공사의 정보를 다 받고 싶으면 airlineId 옵션을 지워주면 된다. 빼도 되는지 안되는지 감으로 하는 것이 아니라 문서를 정독해보..

공공 데이터 2022.01.25

공공 데이터 2강. 파싱(1)

공항 목록과 항공사 목록을 조회하여 원하는 정보를 입력한 다음 미리보기를 눌러주면 요청한 정보들이 xml 형태로 나온다. 페이지의 주소를 분석해보자. http://openapi.tago.go.kr/openapi/service/DmstcFlightNvgInfoService/getFlightOpratInfoList? 까지가 주소이다. http에서 get요청을 할 때 쿼리 스트링을 사용하여 구체적인 요청을 했었다. 쿼리 스트링의 형식은 주소?키=값&키=값 모양이였다. 물음표를 기준으로, 물음표 직전에 파일명이 있으면 URL, 없으면 URI이다. 이 주소는 URI이다!! serviceKey=~~%3D%3D // 인증키 serviceKey= 부터 %3D%3D까지가 발급받은 인증키이다. 여기에 자신의 인증키를 넣어..

공공 데이터 2022.01.25

자바 32강. GSON

이거만 하면 통신할 준비 끝! https://mvnrepository.com/ 구글이 만든 라이브러리이다. 내가 아닌 외부에서 만든 라이브러리를 써드파티(third party)라고 한다. 제삼자가 만든 라이브러리라는 의미이다. gson 검색 버전이 아주 많다. 최신 버전은 안정화되지 않아서 그 아래 가장 많이 다운로드한 것을 다운로드할 것이다. 라이브러리에 추가해준다. gson을 사용하면 우리가 json에게 전송하기 위해 toJson( ) 메서드를 만들어 일일이 리턴 값을 적어줬던 것을 단 한 줄로 끝낼 수 있다. 바로 Gson 클래스의 메서드 두 개만 기억하면 된다. 전송받은 json을 자바 오브젝트로 바꿀 때 : fromJson( ) 전송하기 위해 json으로 바꿀 때 : toJson( ) toJso..

JAVA 2022.01.21

자바 31강. SMS 전송 라이브러리

회원가입을 해준다. SDK(Software Develop Kit) 필요한 메서드가 포함된 파일에 관련된 모든 파일을 다운로드하는 것 내가 개발할 때 필요한 모든 자바 파일을 다운로드하는 것을 sdk라고 한다. 즉, 라이브러리를 다운로드하는 것이다. 자바에서 .jar는 라이브러리나 실행파일을 말한다. 컴파일된 .class 파일들 .jar 파일 안에 main이 있으면 실행파일이고 없으면 라이브러리이다. 여기 2.2 v 이 있으니까 2.2v으로 다운로드하자. 우리의 workspace 폴더 안에 downloads 폴더 안에 다운로드하여준다. 메시지를 보내는 예제를 따라 해 보자. 예제를 다 복사해서 새 파일에 붙여준다. 그러면 오류가 막 날 것이다. 오류를 잡기 위해 또 하나의 라이브러리를 다운로드하여야 한다...

JAVA 2022.01.21

자바 30강. JSON

자바 스크립트를 잠깐 언급하고 가자. let : 변수를 초기화하거나 선언할 때 쓰는 키워드 (자바의 자료형과 다름) let n = 10; let s = "문자열"; let ss = '문자열'; 문자열을 초기화할 때 홑 따옴표도 가능하다. 타입 자체가 없기 때문에 제네릭 같이 리턴 타입을 생각할 필요도 없고, 초보 개발자들이 사용하기에 좋은 언어이다. 이 언어가 오브젝트를 선언할 때 (커스텀 자료형) let user = {// 클래스 이름 모두 소문자 name : "홍길동", age : 60 } new를 하지 않아도 모든 게 heap에 들어간다. 데이터의 사이즈를 모르고, 동적이기 때문이다. user.name으로 변수를 찾을 수 있다. 자바의 오브젝트 (커스텀 자료형) class User { // 처음에 ..

JAVA 2022.01.21