Assalamualkaum Wr. Wb..
Sahabat blogger semua pernah tidak kamu ketika mengunakan sebuah program, code (id) otomatis generate seperti ada paternnya contoh HR001001. Bagaimana caranya jika kita membuat auto number dengan mengunakan java dan persistance.
disini saya memberi nama nya AutoNumber.
kemudian buatlah sebuah entity class dengan cara klik FIle--> new File --> pilih persistence dan pilih entity class masukan database yang tadi kitabuat dan beri nama classnya Mahasiswa:
buat tampilan view sbb:
tambahkan geter untuk txtUserId
downloas sourcecode lengkapnya disini:
autonumber
Sahabat blogger semua pernah tidak kamu ketika mengunakan sebuah program, code (id) otomatis generate seperti ada paternnya contoh HR001001. Bagaimana caranya jika kita membuat auto number dengan mengunakan java dan persistance.
1. Persiapan yang Dibutuhkan
Pertama kamu harus sudah menginstall Netbeans dan selanjutnya buatlah database terlebih dahulu denga cara :create database autonumber;
2. Pembuatan Code Program
Selanjutnya buatlah sebuah projek baru java aplication da beri judul bebas:disini saya memberi nama nya AutoNumber.
kemudian buatlah sebuah entity class dengan cara klik FIle--> new File --> pilih persistence dan pilih entity class masukan database yang tadi kitabuat dan beri nama classnya Mahasiswa:
package asep.autonumber;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
/**
*
* @author asep
*/
@Entity
public class Mahasiswa implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name="Nim",length=10,nullable=false,unique=true)
private String nim;
@Column(name="nama",length=20,nullable=false)
private String nama;
@Column(name="alamat",length=50,nullable=false)
private String alamat;
public String getAlamat() {
return alamat;
}
public void setAlamat(String alamat) {
this.alamat = alamat;
}
public String getNama() {
return nama;
}
public void setNama(String nama) {
this.nama = nama;
}
public String getNim() {
return nim;
}
public void setNim(String nim) {
this.nim = nim;
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Mahasiswa other = (Mahasiswa) obj;
if ((this.nim == null) ? (other.nim != null) : !this.nim.equals(other.nim)) {
return false;
}
if ((this.nama == null) ? (other.nama != null) : !this.nama.equals(other.nama)) {
return false;
}
if ((this.alamat == null) ? (other.alamat != null) : !this.alamat.equals(other.alamat)) {
return false;
}
return true;
}
@Override
public int hashCode() {
int hash = 3;
hash = 59 * hash + (this.nim != null ? this.nim.hashCode() : 0);
hash = 59 * hash + (this.nama != null ? this.nama.hashCode() : 0);
hash = 59 * hash + (this.alamat != null ? this.alamat.hashCode() : 0);
return hash;
}
}
Lalu buat persistenceHelper:import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
/**
*
* @author asep
*/
@Entity
public class Mahasiswa implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name="Nim",length=10,nullable=false,unique=true)
private String nim;
@Column(name="nama",length=20,nullable=false)
private String nama;
@Column(name="alamat",length=50,nullable=false)
private String alamat;
public String getAlamat() {
return alamat;
}
public void setAlamat(String alamat) {
this.alamat = alamat;
}
public String getNama() {
return nama;
}
public void setNama(String nama) {
this.nama = nama;
}
public String getNim() {
return nim;
}
public void setNim(String nim) {
this.nim = nim;
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Mahasiswa other = (Mahasiswa) obj;
if ((this.nim == null) ? (other.nim != null) : !this.nim.equals(other.nim)) {
return false;
}
if ((this.nama == null) ? (other.nama != null) : !this.nama.equals(other.nama)) {
return false;
}
if ((this.alamat == null) ? (other.alamat != null) : !this.alamat.equals(other.alamat)) {
return false;
}
return true;
}
@Override
public int hashCode() {
int hash = 3;
hash = 59 * hash + (this.nim != null ? this.nim.hashCode() : 0);
hash = 59 * hash + (this.nama != null ? this.nama.hashCode() : 0);
hash = 59 * hash + (this.alamat != null ? this.alamat.hashCode() : 0);
return hash;
}
}
package asep.autonumber;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
/**
*
* @author asep
*/
public class PersistanceHelper {
private static final EntityManagerFactory FACTORY;
static{
FACTORY=Persistence.createEntityManagerFactory("AutoNumberPU");
}
public static EntityManagerFactory getFACTORY() {
return FACTORY;
}
}
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
/**
*
* @author asep
*/
public class PersistanceHelper {
private static final EntityManagerFactory FACTORY;
static{
FACTORY=Persistence.createEntityManagerFactory("AutoNumberPU");
}
public static EntityManagerFactory getFACTORY() {
return FACTORY;
}
}
buat tampilan view sbb:
tambahkan geter untuk txtUserId
public JTextField getTxtId() {
return txtId;
}
kemudin buat controlernya:return txtId;
}
package asep.autonumber;
import javax.persistence.EntityManager;
import javax.persistence.Query;
/**
*
* @author asep
*/
public class Controler {
private View view;
public Controler(View view) {
this.view = view;
}
public void select(){
EntityManager manager=PersistanceHelper.getFACTORY().createEntityManager();
manager.getTransaction().begin();
try{
@SuppressWarnings("unchecked")
Query id= manager.createQuery("select max(a.nim) from Mahasiswa a");
Object coun= id.getSingleResult();
if(coun==null){
view.getTxtId().setText("0001");
}else{
int nilai=Integer.parseInt(coun.toString());
nilai=nilai+1;
view.getTxtId().setText("000"+String.valueOf(nilai));
}
manager.getTransaction().commit();
}finally{
manager.close();
}
}
}
lalu tambahkan pula pada action btnAdd koding ini:import javax.persistence.EntityManager;
import javax.persistence.Query;
/**
*
* @author asep
*/
public class Controler {
private View view;
public Controler(View view) {
this.view = view;
}
public void select(){
EntityManager manager=PersistanceHelper.getFACTORY().createEntityManager();
manager.getTransaction().begin();
try{
@SuppressWarnings("unchecked")
Query id= manager.createQuery("select max(a.nim) from Mahasiswa a");
Object coun= id.getSingleResult();
if(coun==null){
view.getTxtId().setText("0001");
}else{
int nilai=Integer.parseInt(coun.toString());
nilai=nilai+1;
view.getTxtId().setText("000"+String.valueOf(nilai));
}
manager.getTransaction().commit();
}finally{
manager.close();
}
}
}
private void btnIdActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
controler=new Controler(this);
controler.select();
}
// TODO add your handling code here:
controler=new Controler(this);
controler.select();
}
3. Testing dan Jalankan Program
sekarang kita coba jalankan programnya, tekan tombol add maka number akan otomatis di create:downloas sourcecode lengkapnya disini:
autonumber
EmoticonEmoticon