10분만에 JSON API 개발하기

AXBoot Framework를 사용해서 JSON API를 10분 만에 만드는 방법을 소개합니다 (사실 10분 조금 더 걸릴수도있…)

준비물

요즘..다들 이정도는 설치되어 계시잖아요.. 그죠..?ㅋㅋ (아니시라면 얼른 설치해주세요!)

1. AXBoot Initialzr에 접속해서 프로젝트를 생성합니다

screen-shot-2016-11-10-at-12-45-37-pm

2. Generate Project 버튼을 클릭하여 소스코드를 내려받고, 압축을 해제합니다.

3. Eclipse 혹은 IntelliJ IDEA를 통해 소스코드를 열어주세요

저는 IntelliJ IDEA에서 소스코드를 열었습니다.

screen-shot-2016-11-10-at-12-53-20-pm

4. AXBoot UI Framework 설치를 위해 터미널에서 npm install 명령을 실행합니다.

screen-shot-2016-11-10-at-12-54-25-pm

5. mvn spring-boot:run 명령으로 서버를 시작합니다.

screen-shot-2016-11-10-at-12-57-25-pm

6. 브라우저에서 http://localhost:8080으로 접속을 하면 AXBoot에서 제공하는 내장 관리시스템 설치 페이지로 이동됩니다. 스키마 및 초기데이터 생성하기 버튼을 눌러서 설치를 진행합니다.

screen-shot-2016-11-10-at-12-58-24-pm

7. 설치가 완료된 후 system/1234 계정으로 로그인하면 다음과 같은 AXBoot 내장 관리 시스템이 실행됩니다.

screen-shot-2016-11-10-at-1-00-07-pm

8. 우측 상단에 있는 개발자도구를 클릭하면 AXBoot 개발자 도구로 이동합니다.

screen-shot-2016-11-10-at-1-01-09-pm

개발자 도구에는 API를 테스트 할 수 있는 Swagger와 내장 H2 데이터베이스에 접속할 수 있는 웹 콘솔, API 코드를 자동으로 생성해주는 CRUD 스캐폴딩 툴인 ModelExtractor가 제공됩니다.

9. 테이블을 생성

API에서 사용할 테이블을 생성합니다. 저는 고객정보를 저장하는 customers라는 테이블을 생성했습니다. H2-Console로 이동하여 데이터베이스 정보를 입력합니다. 데이터베이스 정보는 axboot-local.properties에서 확인할 수 있습니다.

저는 다음과 같이 접속 정보를 입력했습니다.

screen-shot-2016-11-10-at-1-07-50-pm
screen-shot-2016-11-10-at-1-08-08-pm

customers라는 테이블을 다음과 같이 생성했습니다.

screen-shot-2016-11-10-at-1-09-07-pm

10. API 코드 생성하기

ModelExtractor 탭으로 이동하여 왼쪽에서 CUSTOMERS 테이블을 선택하여 테이블 정보를 확인합니다.

screen-shot-2016-11-10-at-1-10-55-pm

11. 테이블 이름(CUSTOMERS)을 클릭하면 다음과 같은 코드 생성화면으로 이동합니다.

screen-shot-2016-11-10-at-1-12-16-pm

API 구성에 필요한 Controller, Entity, Service, Repository등의 기본적인 코드를 데이터베이스 테이블 정보를 기반으로 자동생성합니다.

Generated Code 우측에 있는 MakeAll 버튼을 클릭한 후 패키지와 클래스 정보를 입력합니다.

screen-shot-2016-11-10-at-1-13-25-pm

저는 customers, Customer로 입력했습니다.

ok 버튼을 클릭하면 컨트롤러와 도메인 패키지에 자동으로 클래스가 생성됩니다. (코드가 보이지 않으시면 새로고침을 해보세요!)

screen-shot-2016-11-10-at-1-14-47-pm

이제 서버를 재기동한 후 Swagger에서 API를 테스트 해보겠습니다.

Ctrl + C (Command + C)로 서버를 중지하고, mvn spring-boot:run명령으로 서버를 다시 시작합니다.

screen-shot-2016-11-10-at-1-16-37-pm

12. Swagger에서 API 테스트 해보기

screen-shot-2016-11-10-at-1-17-19-pm

개발자도구의 Swagger에 가보면, 이제 Customer API가 추가되었습니다.

PUT API를 통해 데이터를 저장하고, GET API를 통해서 조회를 할 수 있습니다.

screen-shot-2016-11-10-at-1-18-46-pm

위와 같이 JSON을 입력하고, 하단의 Try it out!을 클릭하면, 정상처리 되었다는 응답을 볼 수 있습니다.

screen-shot-2016-11-10-at-1-19-31-pm

이제 GET API의 Try it out!을 누르면 다음과 같은 JSON 응답을 받을 수 있습니다.

screen-shot-2016-11-10-at-1-20-12-pm

참~쉽죠잉!

AXBoot를 사용하면 이렇게 쉽고 빠르게 JSON API를 만들수 있습니다!

다음편에는 GET API에 파라미터를 추가하고 조회 조건에 따라 데이터를 조회하는 JPA+QueryDSL 예제를 살펴보겠습니다

도움이 되셨다면 Github Star 꼭 부탁드려요

Star

Star

Show your support

Clapping shows how much you appreciated Brant Hwang’s story.