So I'm making an API using Java Spring-boot and JBDC with PostgreSQL as the database and Postman for testing. All the basic CRUD function is already implemented, but I'm trying to validates if a value in the POST request is already in the database or not so there are no duplicate data.
Here's the model:
package com.akuntansi.akuntansi.model;
import java.sql.Timestamp;
import jakarta.persistence.Id;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
public class mAkuntansi {
private Integer id_md_jurnal_Integer;
private Integer id_dd_wilayah_kerja;
private String kode_file;
private String file_id;
private String tanggal;
private String debet_kredit;
private String kode_coa;
private long nominal;
private Integer flag;
private Integer id_akmt_subledger;
private Integer id_referensi;
private String no_bukti;
private Timestamp created_date;
public mAkuntansi(){}
public mAkuntansi(Integer id_md_jurnal_Integer, Integer id_dd_wilayah_kerja, String kode_file, String file_id, String tanggal, String debet_kredit, String kode_coa,
long nominal, Integer flag, Integer id_akmt_subledger, Integer id_referensi, String no_bukti, Timestamp created_date){
this.id_md_jurnal_Integer = id_md_jurnal_Integer;
this.id_dd_wilayah_kerja = id_dd_wilayah_kerja;
this.kode_file = kode_file;
this.file_id = file_id;
this.tanggal = tanggal;
this.debet_kredit = debet_kredit;
this.kode_coa = kode_coa;
this.nominal = nominal;
this.flag = flag;
this.id_akmt_subledger = id_akmt_subledger;
this.id_referensi = id_referensi;
this.no_bukti = no_bukti;
this.created_date = created_date;
}
public mAkuntansi(Integer id_dd_wilayah_kerja, String kode_file, String file_id, String tanggal, String debet_kredit, String kode_coa,
long nominal, Integer flag, Integer id_akmt_subledger, Integer id_referensi, String no_bukti, Timestamp created_date){
this.id_dd_wilayah_kerja = id_dd_wilayah_kerja;
this.kode_file = kode_file;
this.file_id = file_id;
this.tanggal = tanggal;
this.debet_kredit = debet_kredit;
this.kode_coa = kode_coa;
this.nominal = nominal;
this.flag = flag;
this.id_akmt_subledger = id_akmt_subledger;
this.id_referensi = id_referensi;
this.no_bukti = no_bukti;
this.created_date = created_date;
}
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
public Integer getid_md_jurnal_int(){
return id_md_jurnal_Integer;
}
public void setid_md_jurnal_int(Integer id_md_jurnal_Integer){
this.id_md_jurnal_Integer = id_md_jurnal_Integer;
}
public Integer getid_dd_wilayah_kerja(){
return id_dd_wilayah_kerja;
}
public void setid_dd_wilayah_kerja(Integer id_dd_wilayah_kerja){
this.id_dd_wilayah_kerja = id_dd_wilayah_kerja;
}
public String getkode_file(){
return kode_file;
}
public void setkode_file(String kode_file){
this.kode_file = kode_file;
}
public String getfile_id(){
return file_id;
}
public void setfile_id(String file_id){
this.file_id = file_id;
}
public String gettanggal(){
return tanggal;
}
public void settanggal(String tanggal){
this.tanggal = tanggal;
}
public String getdebet_kredit(){
return debet_kredit;
}
public void setdebet_kredit(String debet_kredit){
this.debet_kredit = debet_kredit;
}
public String getkode_coa(){
return kode_coa;
}
public void setkode_coa(String kode_coa){
this.kode_coa = kode_coa;
}
public long getnominal(){
return nominal;
}
public void setnominal(long nominal){
this.nominal = nominal;
}
public Integer getflag(){
return flag;
}
public void setflag(Integer flag){
this.flag = flag;
}
public Integer getid_akmt_subledger(){
return id_akmt_subledger;
}
public void setid_akmt_subledger(Integer id_akmt_subledger){
this.id_akmt_subledger = id_akmt_subledger;
}
public Integer getid_referensi(){
return id_referensi;
}
public void setid_referensi(Integer id_refrensi){
this.id_referensi = id_refrensi;
}
public String getno_bukti(){
return no_bukti;
}
public void setno_bukti(String no_bukti){
this.no_bukti = no_bukti;
}
public Timestamp getcreated_date(){
return created_date;
}
public void setcreated_date(Timestamp created_date){
this.created_date = created_date;
}
}
Let say for example I want to validates the kode_coa
. There's a POST request with kode_coa
of K1
but in the database, a data with value K1
already exist, how do you prevent a duplicate data from getting inserted into the database?