서비스란 단어는 물질적 재화 이외의 생산이나 소비에 관련한 모든 경제활동을 일컫는다. 당근이나 배달의 민족, 카카오톡 등을 서비스라고 말한다. 정확히는 공급자와 수요자의 상생 생태계란 단어가 있는데, 서비스를 이용하는 사용자가 있고, 서비스를 제공해주는 제공자가 있기 때문에 플랫폼 서비스라고 말한다. 개발할 때 개발자는 자신이 사용하는 목적보다는 다른 사용자에게 서비스를 개발하여 편의를 도와준다. 웹 서비스 일수도 있고 앱 서비스 일수도 있다. 개발을 처음 접하는 사람들에게 이 서비스의 동작 원리를 알려주려고 한다. 동작 원리를 알고 있어야 개발할 때 이해가 쉽다. 동작 원리 사용자는 웹이나 앱을 이용하고 화면을 클릭하면 원하는 결과를 얻을 수 있다. 결과는 우리가 눈에 안보이는 웹/앱과 서버가 주거니 ..
개발을 하면 Request로 들어오는 값이 null 값인지 아닌지 빈 문자열인지 확인이 필요하다. Service 단(비즈니스 로직)에서 값을 확인을 해도 된다. 하지만 기능이 실행되기 전에 확인을 해야 한다. 값이 없거나 잘못된 경우 오류가 나기 때문에 Controller 에서 값을 확인하는 게 더 간결한 코드를 작성하고 처리를 하는 게 유리하다. 값을 확인할 때 스프링부트에서는 validation 플러그인을 이용하면 쉽게 유효성을 확인할 수 있다. implementation 'org.springframework.boot:spring-boot-starter-validation' 플러그인을 추가 후 Request 로 값을 받는 DTO 파일을 연다. package com.study.valid_test.dto..
네이버 개발자 설정 먼저 네이버 로그인 API 를 사용하려면 네이버 개발자 사이트에 로그인을 한 후 애플리케이션 정보를 등록해야 사용할 수 있다. 애플리케이션 추가 1. 상단의 Application 메뉴를 클릭하면 아래 화면에서 왼쪽에 [ 애플리케이션 등록 ] 화면을 누른다. 2. 애플리케이션 이름을 입력하고, 선택하세요 버튼을 클릭해서 [ 네이버 로그인 ] 항목을 선택한다. 3. 네이버 로그인을 통해서 제공받을 정보를 선택한다. 필수로 받아야할 항목이면 필수를 체크하고, 추가로 받을 항목이면 추가로 선택한다. 4. 서비스 URL과 네이버 로그인 Callback URL 을 입력한다. 네이버 로그인 Callback URL 로그인은 사용자가 로그인 후 필요한 정보를 넘겨받을 때 필요한 URL 이다. 정보를 ..
WebClient 란 API를 호출하기 위해 사용되는 Http Client 모듈 중 하나 왜 WebClient 가 필요한가 자바에서 많이 사용하는 Http Client 는 RestTemplate 이다. Spring 5.0 버전부터 RestTemplate 은 유지 관리 모드로 변경되었고, 대안으로 WebClient 사용을 강력히 권고하고 있다. WebClient 는 논블로킹/블로킹 모두 지원한다. 동작 원리 Single-Thread, Not-Blocking 이벤트 반응형으로 동작 Spring Web Reactive 모듈에 포함 React Web 프레임워크인 Spring WebFlux 에서 Http Client 로 사용됨 공식 문서 https://docs.spring.io/spring-framework/re..
RestTemplate 란 HTTP 통신을 위한 도구로 RestFul API 웹 서비스와의 상호작용을 쉽게 외부 도메인에서 데이터를 가져오거나 전송할 때 사용되는 스프링 프레임워크의 클래스를 의미한다. 다양한 HTTP 메소드 (GET, POST, PUT, DELETE 등)을 사용하며 원격 서버와 ‘동기식 방식'으로 JSON, XML 등의 데이터 형식으로 통신한다. 동기식 방식으로 요청을 보내고 응답을 받을 때까지 블로킹되며, 요청과 응답이 완료되기 전까지 다음 코드로 진행되지 않는다. 원격 서버와 통신할 때는 응답을 기다리는 동안 대기해야 한다. 동기 방식 및 비동기 방식 동기 방식은 특정 코드가 끝나고 다음 코드가 실행된다. 그래서 API 방식을 호출하고 응답을 받을때까지 기다렸다가 다음 코드를 실행하..
카카오 서비스 추가 내 애플리케이션 등록 1. 카카오 Developers 사이트에 가서 로그인을 한 후 애플리케이션을 추가한다. 2. 앱 이름, 사업자명, 카데고리를 선택 후 체크 항목을 체크 후 저장버튼을 클릭한다. 3. 저장한 정보가 목록에 표시된다. 표시된 목록을 클릭하면 상세 설정 화면으로 이동된다. 4. 왼쪽 메뉴에서 플랫폼을 선택 후 아래의 Web 이라고 표시된 부분에서 [ Web 플랫폼 등록 ] 버튼을 클릭한다. 5. 로컬 환경으로 서비스를 구현하기 때문에 로컬 주소와 웹 페이지의 포트 번호를 입력하여 저장 버튼을 클릭한다. 6. 왼쪽 메뉴에서 카카오 로그인 메뉴를 클릭후 [ Redirect URI 등록 ] 을 클릭한다. 7. Redirect URI 을 추가하는 이유는 API를 호출했을 때 ..