Simple Rest API (Tanpa Database)

Sogumontar Hendra Simangunsong
4 min readFeb 20, 2020

--

Salam sejahtera bagi kita semua kembali lagi bersama saya, Sogumontar hendra Simangunsong.

Sebelumnya, saya telah menjelaskan cara untuk membuat sebuah project Spring Boot baru menggunakan Start.spring.io ( https://medium.com/@hendrasimz92/membuat-project-spring-boot-baru-62d3b8e52b49 ). Dan pastikan anda sudah punya maven .Untuk menjalankan project springboot ini, anda harus memiliki maven terlebih dahulu .

Jika belum memiliki maven, anda bisa mendownloadnya dari https://maven.apache.org/

Setelah berhasil di download, kemudian di extrack, setelah itu anda harus mendaftarkan direktory bin folder maven tersebut ke dalam environtment variables.

Kali ini saya akan menjelaskan tentang cara membuat Rest Api dengan menggunakan Spring Boot. Sebelumnya saya akan menjelaskan sedikit tentang Rest Api . REST ( Representational State Transfer ) merupakan salah satu metode komunikasi menggunakan protokol HTTP untuk pertukaran data. Tujuan dari REST adalah untuk menjadikan sistem berada dalam performa yang baik, cepat dan mudah untuk di kembangkan (scaleable)dalam hal pertukaran dan komunikasi data.

API (Application Programming Interface) biasanya dikenal sebagai penghubung antar aplikasi, ataupun penghubung antara front end dan back end. Biasanya backend menyediakan API, dan frontend dapat meng-consume API tersebut. Output dari API adalah JSON,XML namun yang banyak digunakan dan yang akan kita gunakan saat ini adalah output dalam bentuk JSON(Javascript Object Notation).

Berikut adalah struktur file project yang akan kita bangun.

Struktur file project

Sekarang langsung saja masuk ke cara pembuatan simple Rest Api (Tanpa Database) kali ini kita belum menggunakan DB. Sebelumnya, kita harus membuat sebuah project Spring Boot yang anda dapat pelajari di https://medium.com/@hendrasimz92/membuat-project-spring-boot-baru-62d3b8e52b49. Sekarang kita coba buka project tersebut. Untuk pertama kali, anda harus menyediakan koneksi, karena project tersebut akan melakukan folderisasi dan download terhadap maven yang telah kita kenalkan di pom.xml.

Setelah selesai akan tampil seperti ini (menggunakan IntelliJ).

Kemudian, kita masuk ke dalam file application.properties file ini merupakan file untuk mengatur configurasi dari project kita, seperti koneksi DB, pengaturan port dll. Untuk mencegah adanya tabrakan port, maka kita harus set port project kita di dalam file ini. Untuk port default dari Spring Boot, adalah 8000. Untuk mengubah port, kita dapat memasukkan code : server.port=8800 di dalam file tersebut.

Kemudian, kita membuat sebuah package yang berisi 1 class controller, dan package lain yang berisi 1 class Service.

HelloService.java

package com.example.demo.service;

import org.springframework.stereotype.Service;

/**
* Created by Sogumontar Hendra Simangunsong on 20/02/2020.
*/

@Service
public class HelloService {

public String hello(){
return "hello";
}
}

Pada code di atas, kita membuat sebuah anotasi (@Service ) untuk memastikan bahwa class tersebut akan di deklarasikan ke dalam bean.

kemudian kita membuat sebuah method String yang hanya berisi return “hello”. Method ini adalah method yang akan di akses oleh controller nantinya.

HelloController.java

package com.example.demo.controller;

import com.example.demo.service.HelloService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
* Created by Sogumontar Hendra Simangunsong on 19/02/2020.
*/
@RestController
@RequestMapping("/api/hello")
public class HelloController {
@Autowired
HelloService helloService;
@GetMapping("/test")
public String hello(){
return helloService.hello();
}
}

Code di atas adalah potongan code untuk controllernya. anotasi @RestController berguna untuk menandakan bahwa class tersebut merupakan REST atau akan return Json. Anotasi @RequestMapping berguna untuk mengatur path(URL) untuk mengakses class tersebut. Anotasi @Autowired berguna untuk menerapkan dependency injection (singletone) pada class HelloService dengan object helloService. @GetMapping berguna untuk menjelaskan bahwa method tersebut menggunakan request dengan method GET, dan menjelaskan path(URL) untuk mengakses method tersebut.

Sekarang, coba jalankan project tersebut.

kemudian anda dapat membuka postman dan mengakses localhost:8800/api/hello/test/ dengan method GET

Hasilnya adalah akan return string “hello”

Atau anda bisa langsung mengakses link dari web browser.

Sekian tutorial kali ini, semoga artikel ini bermanfaat untuk kita semua. Terimakasih .

Source code dapat di untuk di link github berikut.

<claps>Happy Coding</claps>

Belajar Consume Api dengan Ajax

--

--

Sogumontar Hendra Simangunsong

Seseorang yang ingin “menyelesaikan” bukan “mengakhiri”. Backend Engineer @DANA Indonesia