본문 바로가기

728x90
반응형

Java

(6)
[Android] Retrofit2를 통해 API 서버와 HTTP 통신하기 JavaScript에서 사용되는 ajax, axios 같은 API 서버와 통신하는 로직을 Retrofit2를 사용하여 안드로이드에서 구현해 보자. 1. Retrofit2란?안드로이드 환경에서 클라이언트와 서버 간의 HTTP 통신을 위한 라이브러리이다.Square에서 개발되었으며, Restful API 통신을 단순화하여 앱의 성능을 개선해 주는 것이 특징이다. OkHttp 라이브러리 위에 구축이 된 모델이며, 다양한 JSON Parser 들을 사용하여 서버의 응답을 처리할 수 있고 비동기적인 네트워크 호출 처리와 서버 오류에 대한 부분을 쉽고 간단하게 대처하여 처리할 수 있다. 2. Retrofit2 사용하기우선 필요한 의존성을 Gradle에 추가해 주자.dependencies { impl..
[JAVA] 서블릿(Servlet) 구현하기 1. 서블릿(Servlet)이란?서블릿이란 자바 어플리케이션에서 클라이언트의 요청을 처리하고 응답을 반환하는 역할을 하는 서버 측의 프로그램 형식이다. 주로 HTTP 요청/응답 처리를 할 때 사용을 하며, Spring MVC구조의 Controller 역할이라고 생각하면 된다. Spring MVC는 DispatcherServlet을 사용하기에 별도의 Servlet 처리를 하지 않아도 HTTP 통신 및 엔드포인트 사용이 가능하지만 Spring MVC 환경이 아닌 그냥 이클립스 환경에서는 Servlet을 사용하여 구성해 주어야 HTTP 통신이 가능해진다. 2. 서블릿(Servlet)의 동작 원리서블릿의 동작 원리 및 순서는 아래와 같다.웹 브라우저(클라이언트)에서 웹 서버에 요청을 한다.웹 서..
[JAVA] 이메일 인증 구현하기 SpringBoot/JAVA 환경에서 이메일 인증 기능을 구현하고자 한다. 각각 구글과 네이버의 SMTP 서버를 사용하고 전송 데이터에 텍스트뿐만이 아닌 HTML을 넣어서 전송하는 이메일 인증 기능을 구현해 볼 것이다. 1. SMTP 서버 설정우선 구글에서 설정하는 법이다. 우선 구글 로그인 후 구글 계정 관리로 들어간다. 그리고 아래 사진과 같이 검색 창에 '앱 비밀번호' 를 입력한다. 앱 비밀번호 창에서 원하는 앱 이름을 입력하고 만들어주면 앱 비밀번호가 생성이 된다.해당 비밀번호를 복사하여 따로 잘 저장해두면 구글 SMTP 설정은 끝났다. 다음으로 네이버에서 설정하는 법이다.네이버 로그인 후 메일 환경설정에서 POP3/IMAP 설정 탭으로 이동해 준 뒤 아래 사진과 같이 설정 후..
[JAVA] HttpURLConnection, HttpClient 사용하기 우선 JDK 1.8 환경에선 HttpClient가 import 되지 않는다. 이유는 모르겠지만 JDK 1.6, 1.7, 11, 17 버전 등에선 잘 동작하니 1.8를 피해서 진행해주면 된다. HttpURLConnection, HttpClient를 사용해서 서버간 통신을 진행하며, json 데이터를 보내주고 결과 값을 받아오는 코드를 작성해 보겠다. 진행해주기 전에 서버 방화벽을 한번 확인해주고 진행해주자 서버간 통신을 진행할 시 체크 사항을 잘 알려주는 사이트이니 필요하다면 참고해서 진행하면 된다.https://junspapa-itdev.tistory.com/32 서버 to 서버간 통신(http, https) 로직 개발시 체크해야할 사항자바 내부 로직에 다른 서비스의 API를 호출해서 사용하는 로직을 개..
[JPA] Batch Insert로 성능 향상시키기 공공데이터 포털을 통해 대량의 데이터를 받아오면서 해당 데이터들을 DB INSERT 작업을 진행할 때 보다 빠르고 효율적으로 처리하기 위해 JDBC의 Batch Insert를 사용해 보기로 했다. 그리고 직접 JPA의 saveAll과 JDBC의 batch Insert를 비교하면서 성능 차이를 확인해 보겠다.   1. saveAll()JPA에서 기본적으로 데이터 저장을 할 때 save()와 saveAll()을 통해 데이터 INSERT를 진행한다.보통 save()는 개별 객체를 저장할 때 사용하고 saveAll()는 한 번에 여러 개의 객체를 저장할 때 사용한다. 원래 처음엔 대량의 데이터 INSERT 작업으로 saveAll()을 사용해서 작업을 진행하려 했었지만 saveAll()은 단건으로 INSERT 쿼..
[JAVA] 공공데이터 오픈 API 사용하기 공공데이터포털은 정부에서 운영하는 오픈 API 서비스로 정부의 공공기관에서 수집된 다양한 종류의 데이터들을 일반 기업들 및 국민 모두가 무료로 자유롭게 사용할 수 있도록 제공하는 서비스이다. 실제로 개발 학원에서도 공공데이터 포털의 데이터를 활용한 프로젝트도 진행하고 공모전 같은 곳에서도 많이 사용하는 사이트이다. 나 역시 공공데이터 포털에 있는 데이터를 하나 활용하여 월마다 데이터를 갱신하는 방식을 통해 간단한 서비스를 제공하는 프로젝트를 구현하려고 한다.     1. 공공데이터 API 신청우선 공공데이터포털로 가서 회원가입 및 로그인을 해주자https://www.data.go.kr/ 공공데이터 포털국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에..

728x90
반응형