Cara menggunakan expressjs crud mysql

Membuat REST API dengan Express JS + MySQL di NodeJS - Halo semuanya, pada artikel kali ini kita akan belajar tutorial membuat REST API menggunakan Express JS dan database MySQL. REST API bisa dikatakan sederhana, sebuah server yang akan mengirimkan hasil berupa respon JSON

Pada artikel ini kita akan membuat rest api dari express js menggunakan pattern controller dan route. Sebelum masuk ke tutorial, kita perlu menyelesaikan desain endpoint dari rest api kita. Pada kesempatan kali ini kita akan mencoba membuat fire rest dengan database sekolah dan tabel siswa. Tentu fungsinya CRUD [Create-Read-Update-Delete] siswa di database

Dalam tutorial membuat rest api dengan express js ini, kita akan membuat desain endpoint sebagai berikut

DAPATKAN / siswa

POS / mahasiswa

PUT / siswa /. Indo

HAPUS / siswa /. Indo


Dimana GET adalah metode untuk mendapatkan daftar kumpulan dari siswa, POST adalah metode untuk mengirimkan data/menambahkan data, PUT adalah metode untuk mengupdate data, dan DELETE adalah metode HTTP untuk menghapus data


Ya, sejauh ini kita sudah berhasil menyelesaikan desain endpoint dari aplikasi rest api yang akan kita buat


Persiapkan Databasenya

Kami akan membuat fire rest dengan database sekolah. Maka kita buat database bernama db_school dan tabel bernama t_students dengan struktur tabel sebagai berikut



Express JS dan instalasi Mysql


Setelah kita berhasil menyelesaikan desain endpoint, saatnya mempersiapkan environment dari aplikasi yang akan kita buat


Pertama buat folder baru, beri nama siswajs


Kemudian buka di VSCode atau arahkan terminal ke folder itu, lalu jalankan perintahnya


npm init

Kemudian Anda bisa masuk, sampai file baru bernama package dibuat. json

Mengandung sesuatu seperti ini,

{

  "nama".   "siswajs" ,< /a>

  "versi".   "1. 0. 0" ,

  "deskripsi".  "" ,

  "utama".  "index. js" ,

  "skrip".  {

     "tes".   "gema \"Kesalahan. tidak ada pengujian yang ditentukan\" && exit 1"

},

  "penulis".  "" ,

  "lisensi".   "ISC"

}


 

Sampai sekarang Anda telah berhasil menginstal npm di folder Anda

Selanjutnya mari kita lanjutkan install express js dan mysql ke dalam aplikasinya

npm instal ekspres --save

Untuk menginstal js ekspres,

npm install cors body-parser mysql --save 

Untuk menginstal mysql dan middleware


Sampai di sini, Anda telah berhasil menginstal modul node yang kita butuhkan dalam tutorial membuat rest api dengan express js + mysql ini


Menyelesaikan Pengaturan Folder


Setelah itu kita perlu menyiapkan beberapa folder seperti config, controller dan route pada aplikasi kita



Buat folder-folder diatas dan siapkan juga file bernama index. js. Seperti di bawah ini




Membuat File Koneksi


Silakan buat file baru bernama koneksi. js di folder konfigurasi. File ini berfungsi untuk menampung kelas koneksi mysql yang akan kita export ke modul/file js lainnya


const  mysql  =   memerlukan['mysql' ]


const   koneksi   = mysql. buatKoneksi [{

    host .  'localhost' ,< /a>

    pengguna .   'akar' ,< /a>

    sandi .  '' ,

    database .  'db_school'

}]


modul . ekspor   =   koneksi

 

Sesuaikan konfigurasi dengan konfigurasi database Anda jika berbeda

modul. ekspor adalah baris perintah umum js untuk mengekspor variabel dalam file. Nanti file ini akan menjadi modul dan variabelnya bisa di import dari file lain


Membuat Controller


Siapkan dan buat file baru bernama siswaController. js di folder pengontrol. Nanti file ini akan bertindak sebagai inti transaksi data dari aplikasi kita


Isikan kode berikut, dan jangan lupa import koneksinya


const   koneksi   =   membutuhkan [ ". /config/connection" ];


ekspor . getUsers = async  [ reqres=>  {

  biarkan  data  =  [];

  coba  {

     mari  sql  =   "pilih * dari t_students" ;


     const   exec   = koneksi . kueri [sql,  fungsi  [ err , baris , bidang ] {

       jika  [ errthrow err ;

       res . json [{

        status .  benar ,

        data .  baris ,

        msg .   "Halo" ,< /a>

}];

}];

  }  tangkap  [kesalahan] {

     kembalikan   res . json [{

      status .  salah ,

      msg . kesalahan. pesan,

}];

}

};


ekspor . insertUser   =   async  [ reqres=>  {

  coba  {

     const   body   = req . tubuh;

     berikan  nama  =   tubuh . nama;

     mari  berumur  =   tubuh . usia;

     mari  jenis kelamin  =   tubuh . jenis kelamin;


     mari  sql  =   `masukkan ke nilai t_students[name,age,gender] [?, ?, ?] ` ;

     biarkan  nilai  =  [nama, umur, jenis kelamin ];

  }  tangkap  [kesalahan] {

     kembalikan   res . json [{

      status .  salah ,

      msg . kesalahan. pesan,

}];

}

};


ekspor . updateUser   =   async  [ reqres=>  {

  coba  {

     const   id   = req . parameter. id;

     const   body   = req . tubuh;

     berikan  nama  =   tubuh . nama;

     mari  berumur  =   tubuh . usia;

     mari  jenis kelamin  =   tubuh . jenis kelamin;


     mari  sql  =   `update t_students set name=?, age=?, gender=?;

     biarkan  nilai  =  [nama, umur, jenis kelamin ,  id ];


     koneksi . kueri [sql, nilai,  fungsi  [ err , baris , bidang ] {

       jika  [ errthrow err ;


       jika  [ baris . yang terpengaruhRows  >   0 ] {

        msg  =   "Berhasil Memperbarui" ;

      }  selain itu  {

        msg = "Tidak ada entri yang diperbarui a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a>" ;

}


       res . json [{

        status .  benar ,

        msg . pesan,

}];

}];

  }  tangkap  [kesalahan] {

     kembalikan   res . json [{

      status .  salah ,

      msg . kesalahan. pesan,

}];

}

};



ekspor . deleteUser   =   async  [ reqres=>  {

  coba  {

     const   id   = req . parameter. id;


     mari  sql  =   `hapus dari t_students where id=${id} ` ;


     koneksi . kueri [sql,  fungsi  [ err , baris , bidang ] {

       jika  [ errthrow err ;

       biarkan  msg  =   "" ;

       jika  [ baris . yang terpengaruhRows  >   0 ] {

        msg  =   "Berhasil Menghapus" ;

      }  selain itu  {

        msg = "Tidak ada entri yang dihapus a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a> a>" ;

}


       res . json [{

        status .  benar ,

        msg . pesan,

}];

}];

  }  tangkap  [kesalahan] {

     res . json [{

      status .  benar ,

      msg . kesalahan. pesan,

}];

}

};


Buat File Ruter


Setelah membuat pengontrol dan konfigurasinya, kami terus membuat router atau file yang akan mengarahkan ke fungsi mana permintaan masuk


Buat file baru bernama siswaRouter. js di folder router,


const   ekspresikan   =   membutuhkan [ 'ekspres' ]


const studentController = membutuhkan['. /controller/siswaController' ]


const   router   =   ekspres . Router []


router . dapatkan [ '/' , StudentController. getUsers]

router . postingan [ '/' , StudentController. insertUser]

router . masukkan [ '/. id' , studentController. updateUser]

router . hapus [ '/. id' , studentController. hapusPengguna]


modul . ekspor   =   router



Siapkan File Indeks Inti. js


Indeks. js adalah file inti yang bertindak sebagai file paling depan dalam aplikasi kita


const   ekspresikan   =   membutuhkan [ 'ekspres' ]

const   cors   =   membutuhkan [ 'cors' ]

const studentRoute =   perlu [ '. /route/siswaRouter' ]


const   aplikasi   =   ekspres []

const   port   =   3000


// perangkat menengah

aplikasi . gunakan [ cors []];

aplikasi . gunakan [ ekspresikan . json []];

aplikasi . gunakan [ '/siswa ' , studentRoute ]


aplikasi . dengarkan [ port , [] =>{

  konsol . log [ `Mendengarkan di port ${pelabuhan}` ];

}]



Sejauh ini kita sudah berhasil membuat api express js dan mysql rest, selanjutnya kita akan mencobanya


Jalankan aplikasi kita dengan memasukkan perintah


indeks simpul. js

di terminal



Pengujian tukang pos

Tidak afdol rasanya jika tidak menguji fire rest yang baru saja kita buat. Buka POSTMAN Anda untuk menguji rest api kami


Metode DAPATKAN / Ambil Data




Metode POST / Tambah Data





Metode PUT / Perbarui Data




Metode HAPUS / Hapus Data





Yaaaa selamat kita sudah berhasil membuat REST API dengan Express JS+MySQL di Node tahun 2021. Semoga tutorial ini bermanfaat bagi kita semua. Senang bisa membantu, Terima kasih, sampai jumpa di artikel berikutnya. ]

Bài mới nhất

Chủ Đề