subrutin
a sequence of programmer life

Advertisement

Membangun Aplikasi REST API Pertama Dengan Spring Boot (Bagian 2)

1 3,843

Pada bagian 1 tulisan ini, subrutin telah mengulas bagaimana programmer memulai membangun “project kosong” menggunakan Spring Boot.  Dalam bagian ke-2,  subrutin akan melanjutkan pembahasan mengenai bagaimana membangun aplikasi pertama dengan spesifikasi yang telah dibahas, yaitu untuk membuat satu endpoint API yang dapat diakses dengan method GET di alamat  /welcome/.Ketika endpoint tersebut diakses, aplikasi akan memunculkan respon keluaran JSON sebagai berikut

Advertisement

{
  "message":"Hello World"
}

 

 

  • DTO (Data Transfer Object)

DTO adalah istilah dalam software engineering yang mendefinisikan sebuah object yang digunakan untuk meng-enkapsulasi data dan mengirimkan dari satu subsistem aplikasi ke yang lain.

Biasanya DTO, digunakan sebuah aplikasi service pada suatu layer untuk mentransfer obejct antara dirinya dan layer antarmuka pengguna (User Interface). Dalam konteks tutorial kali ini, akan dibuat class DTO bernama MessageResponseDTO yang berfungsi menampung data yang dikirim tersebut.

package com.subrutin.hellospring.dto;

public class MessageResponseDTO {

    private String message;
    
        //getter setter diabaikan untuk simplifikasi
    
}

Advertisement

Perhatikan, bahwa class ini hanya terdiri dari properti message, hal ini sesuai dengan  requirement format response JSON yang ingin ditampilkan.

  • Controller

Berikutnya buat sebuah controller yang bertugas untuk menangani request berdasarkan path endpoint request-nya. Dalam tutorial ini misalnya dibuat class controller bernama WelcomeController 

package com.subrutin.hellospring.resources;

import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import com.subrutin.hellospring.dto.MessageResponseDTO;

@RestController
public class WelcomeResource {

    @GetMapping("/welcome")
    public ResponseEntity<MessageResponseDTO> sayHi(){
        MessageResponseDTO response = new MessageResponseDTO();
        response.setMessage("Hello World");
        
        return ResponseEntity.ok().body(response);
        
    }
}

Perhatikan class WelcomeResources ini diberikan anotasi @RestController pada baris 9, disini programmer memberitahu kepada framework bahwa class WelcomeResource merupakan class yang berfungsi sebagai rest controller.

Advertisement

Perhatikan juga pada method sayHi dimana juga diberikan anotasi @GetMapping yang menandakan bahwa method tersebut merupakan method  yang akan menangani request GET dari endpoint /welcome/ sebagaimana requirement software diawal.

Method ini memberikan return berupa object  ResponseEntity<MessageResponseDTO>  dimana MessageResponseDTO merupkan body dari response yang nantinya dikirim. Object ResponseEntity merupakan object bawaan Spring Framework yang dapat digunakan programmer sebagai representasi dari object response http, pada methodmethod yang menangani REST request

  • Menjalankan Program

Jalankan program sebagaimana yang pernah dibahas pada bagian 1 tulisan ini, atau dapat menggunakan command  Maven pada terminal / command prompt dengan mvn spring-boot:run. Gunakan aplikasi postman atau curl untuk mengakses webservice pada http://localhost:8080/welcome/

advertisement

Get real time updates directly on you device, subscribe now.

1 Komen
  1. Apriyanto berkata

    Ini repo githubnya dimana yaa? Struktur DTO di implementasikan di mana tidak dijelaskan dibagian ini.

Tinggalkan pesanan

Alamat email anda tidak akan disiarkan.