Bismillahi Rahmanir Rahim Selamat malam sobat, kali ini kita akan membuat sebuah project website dengan menggunakan framework spring. Tidak usah berlama-lama langsung saja kita buat.
Pertama kita memerlukan :
- JDK
- Netbeans
- Xampp
Kita install bahan tersebut, jika belum tahu, maka lihat di google cara installnya. kemudian jalankan netbeans. Sebelumnya kita buat dahulu project di start.spring.io .
- Buat project di start.spring.io
Buat nama Group, Artifact dan pilih JPA, Web, Mysql.
- Buka netbeans dan import project tadi
- Pada Other Source, dan pada application.properties. lihat gambar. Tambahkan script tersebut
- Jalankan Xampp
- Buat Database db_perpustakaan
- Arahkan ke Source Packages. Buat packace baru dengan nama seperti gambar di bawah
- Kemudian pada package tersebut buat class dengan nama Anggota.java
dan isi dengan script berikut :
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.HendraAgus.UTS.Hendra_UTS.entity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import org.hibernate.annotations.GenericGenerator;
/**
*
* @author Aras
*/
@Entity
public class Anggota {
@Id
@GeneratedValue(generator = "uuid")
@GenericGenerator(name = "uuid", strategy = "uuid2")
private String id;
@Column(nullable=false, unique=true, length = 10)
private String nama;
@Column(nullable=false, length = 50)
private String jurusan;
@Column(nullable=false, length = 50)
private String alamat;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getNama() {
return nama;
}
public void setNama(String nama) {
this.nama = nama;
}
public String getJurusan() {
return jurusan;
}
public void setJurusan(String jurusan) {
this.jurusan = jurusan;
}
public String getAlamat() {
return alamat;
}
public void setAlamat(String alamat) {
this.alamat = alamat;
}
}
- Tambahkan satu class lagi di package tersebut dengan nama Buku.java
Dan isikan class tersebut dengan script berikut :
package com.HendraAgus.UTS.Hendra_UTS.entity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import org.hibernate.annotations.GenericGenerator;
@Entity
public class Buku {
@Id
@GeneratedValue(generator = "uuid")
@GenericGenerator(name = "uuid", strategy = "uuid2")
private String id;
@Column(nullable=false, unique=true, length = 10)
private String judul;
@Column(nullable=false, length = 50)
private String penerbit;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getJudul() {
return judul;
}
public void setJudul(String judul) {
this.judul = judul;
}
public String getPenerbit() {
return penerbit;
}
public void setPenerbit(String penerbit) {
this.penerbit = penerbit;
}
}
- Di Source Packages buat package baru dengan nama seperti berikut :
- Dan buat class baru dengan nama :
Dan isi dengan script berikut :
package com.HendraAgus.UTS.Hendra_UTS.dao;
import com.HendraAgus.UTS.Hendra_UTS.entity.Anggota;
import org.springframework.data.repository.PagingAndSortingRepository;
public interface AnggotaDao extends PagingAndSortingRepository<Anggota, String>{
}
- Tambah class lagi di package tersebut dengan nama :
Dan isi class tersebut dengan script berikut :
package com.HendraAgus.UTS.Hendra_UTS.dao;
import com.HendraAgus.UTS.Hendra_UTS.entity.Buku;
import org.springframework.data.repository.PagingAndSortingRepository;
public interface BukuDao extends PagingAndSortingRepository<Buku, String>{
}
- Pergi lagi di Source Packages buat sebuah package baru dengan nama
- Dan buat class baru di dalamnya dengan nama
Lalu isikan script berikut :
package com.HendraAgus.UTS.Hendra_UTS.controller;
import com.HendraAgus.UTS.Hendra_UTS.dao.AnggotaDao;
import com.HendraAgus.UTS.Hendra_UTS.entity.Anggota;
import javax.validation.Valid;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
@RequestMapping("/anggota")
public class AnggotaHtmlController {
//load model tabel anggota
@Autowired
private AnggotaDao pd;
//menampilkan list anggota
@RequestMapping("/tampilan")
public void daftarAnggota(Model m) {
m.addAttribute("daftarAnggota", pd.findAll());
}
//menghapus data anggota
@RequestMapping("/hapus")
public String hapus(@RequestParam("id") String id) {
pd.delete(id);
return "redirect:tampilan";
}
//Tambah Data Anggota
@RequestMapping(value = "/tambah", method = RequestMethod.POST)
public String prosesTambah(@Valid Anggota s, BindingResult errors) {
if (errors.hasErrors()) {
return "/anggota/tambah";
}
pd.save(s);
return "redirect:tampilan";
}
//Tambah Data Anggota
@RequestMapping(value = "/tambah", method = RequestMethod.GET)
public String tampilkanTambah(@RequestParam(value = "id", required = false) String id, Model m) {
//defaultnya isi dengan object baru
m.addAttribute("anggota", new Anggota());
if (id != null && !id.isEmpty()) {
Anggota s = pd.findOne(id);
if (s != null) {
m.addAttribute("anggota", s);
}
}
return "/anggota/tambah";
}
}
- Tambah satu class baru lagi dengan nama
Kemudian isi dengan script berikut :
package com.HendraAgus.UTS.Hendra_UTS.controller;
import com.HendraAgus.UTS.Hendra_UTS.dao.BukuDao;
import com.HendraAgus.UTS.Hendra_UTS.entity.Buku;
import javax.validation.Valid;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
@RequestMapping("/buku")
public class BukuHtmlController {
//load model tabel buku
@Autowired
private BukuDao pd;
//menampilkan list buku
@RequestMapping("/tampilan")
public void daftarBuku(Model m) {
m.addAttribute("daftarBuku", pd.findAll());
}
//menghapus data buku
@RequestMapping("/hapus")
public String hapus(@RequestParam("id") String id) {
pd.delete(id);
return "redirect:tampilan";
}
//Tambah Data Buku
@RequestMapping(value = "/tambah", method = RequestMethod.POST)
public String prosesTambah(@Valid Buku s, BindingResult errors) {
if (errors.hasErrors()) {
return "/buku/tambah";
}
pd.save(s);
return "redirect:tampilan";
}
//Tambah Data Buku
@RequestMapping(value = "/tambah", method = RequestMethod.GET)
public String tampilkanTambah(@RequestParam(value = "id", required = false) String id, Model m) {
//defaultnya isi dengan object baru
m.addAttribute("buku", new Buku());
if (id != null && !id.isEmpty()) {
Buku s = pd.findOne(id);
if (s != null) {
m.addAttribute("buku", s);
}
}
return "/buku/tambah";
}
}
- Pergi ke Other Sources dan buatkan package dengan nama
Dan buat dua buah class html dengan nama tampilan.html dan tambah.html
Isi dengan script berikut :
Isi dengan script berikut :
- Kemudian masih di Other Source tersebut, kemudian buat sebuah package baru dengan nama
Dan didalamnya buat class baru html dengan nama tampilan.html dan tambah.html
Dan isikan script berikut :
Dan isi script berikut :
- Nah, sudah di isi script semuanya, kemudian kita clean and build :
- Kita running atau jalankan project
- Lihat di browser dengan search localhost:8080/anggota/tampilan
Komentar
Posting Komentar