resttemplate 검색 결과
2건
[스프링] (AA vs. Retrofit) 어노테이션 기반 REST 클라이언트를 위한 프레임워크
연구 계기 중국 게임사 미호요는 자사 게임 커뮤니티 앱 HoYoLab을 운영한다. 이 앱은 게임 관련 공략을 공유하는 기본적인 커뮤니티 기능과 더불어, 유저의 게임 내 데이터를 수치화 & 통계해 보여주는 편의 기능도 제공한다. 원신 유저로써 관련 API들의 엔드포인트 주소를 파악하고 인증 방식을 파훼하여 자바 클라이언트를 작성하고 싶었기 때문에 HoYoLab 안드로이드 APK 파일을 살펴보게 되었다. 그러던던 중 HTTP 클라이언트 호출 서비스가 상당히 깔끔히 작성되어 있음을 발견하였다. 개발자는 클라이언트 서비스의 인터페이스만 작성하면 되었는데, 이들은 어노테이션으로 꾸며져 선언적으로 구성되어 있다. 이런 방식은 스프링 MVC에서 핸들러 매핑을 작성하는 것과도 흡사하다. package com.mihoy..
[스프링 Web] 웹 API 호출 이야기 - RestTemplate을 사용하는 서비스 구조와 구현
RestTemplate을 사용하는 서비스 레이어 구조 및 구현 요약 서비스가 비즈니스 객체를 다른 곳에서 획득해 오는 경우가 있다. 그 출처는 DB가 될 수도 있고, 다른 웹 서비스가 되기도 한다. DB와 퍼시스턴스 레이어를 거쳐 객체를 뽑아오든, 웹 API를 호출하여 객체를 얻어오든 두 방식을 구현하는 코드 패턴은 스프링에서 거의 유사하다. 3티어 아키텍쳐로 책임을 나누게 되며. 티어 간 객체 변환이 공통적으로 요구되는 사항이다. 3티어 아키텍처 비교 DB에서 객체를 얻을 때 서비스는 레포지토리 레이어를 통해 DB 데이터에 접근한다. 레포지토리 단은 JPA 구현체 Hibernate 기술 등을 채용하여 ORM(객체-관계형 매핑)을 제공한다. ResultSet에 담긴 관계형 데이터를 자바 엔터티 객체로 변..