> Dalam mendesain database saat ini maka saya umumnya menggunakan
> dua jenis key. Key pertama adalah primary key dan ini adalah
> system generated menggunakan auto increment atau guid.
> Key kedua adalah natural key. Jika dalam tabel ada satu field atau
> kumpulan field yang bisa menjadi identitas unik dari record maka
> itu saya jadikan natural key dengan cara bikin index dengan
> constraint unique. Kalau nggak ada natural key maka cukup
> pakai primary key. Dari pengalaman saya maka desain dual key
> ini cocok jika menggunakan teknologi ORM baik Hibernate maupun JPA.

Untuk konfigurasi Primary key (guid) dan Natural key (dengan  menggunakan
constrain unique) apakah konfigurasinya kira2 seperti ini?

@Entity 
@Table(name="t_systemnumber", 
uniqueConstraints = {...@uniqueconstraint(columnNames={"CODE_SYS", 
"PREFIX","SUFFIX"})} 
) 
public class SystemNumber implements java.io.Serializable{ 
@Id 
@GeneratedValue(strategy=GenerationType.AUTO) 
@Column(name="ID_SYS") 
private int idSys; 
@Column(name="CODE_SYS", nullable=false, unique=false, length=20) 
private String codeSys; 
@Column(name="PREFIX", nullable=true, unique=false, length=10) 
private String prefix; 
@Column(name="NUMBER", nullable=false, unique=false, length=20) 
private String number; 
@Column(name="SUFFIX", nullable=true, unique=false, length=10) 
private String suffix; 

Nb : ini hasil dari post contoh mas onsir salman..

===========================================================
misalkan relasi tabel saya misalkan seperti ini :
> - Mhs(*KdMhs,NamaMhs) 
> - Soal(*KdSoal,Soal) 
> - JenisSoal(*KdJenis,JenisSoal) 
> - Test(*KdTest,Tanggal,KdMhs) 
> - TestDetail(*KdTest,*KdSoal, *KdJenisSoal,status)  (versi1)

untuk TestDetail, jadi berubah seperti ini aja yach :
TestDetail(*Id(auto increament),KdTest,KdSoal, KdJenisSoal,status) (versi2)

untuk di TestDetail yang versi2, baik KdTest, KdSoal, dan juga KdJenisSoal,
diperoleh dari JoinColumn..
apakah konfigurasinya menjadi seperti ini?

@Entity 
@Table(name="TestDetail", 
uniqueConstraints = {...@uniqueconstraint(columnNames={"KdTest", 
"KdSoal","KdJenisSoal"})} 
) 
public class TestDetail implements java.io.Serializable{ 
@Id 
@GeneratedValue(strategy=GenerationType.AUTO) 
@Column(name="Id") 
private int id; 

@ManyToOne
@JoinColumn(name = "KdTest")
private Test test;

@ManyToOne
@JoinColumn(name = "KdSoal")
private Soal soal;

@ManyToOne
@JoinColumn(name = "KdJenisSoal")
private JenisSoal jenissoal;

//Getter n setter

}

Mohon pencerahannya yach..
Thank's
-- 
View this message in context: 
http://www.nabble.com/Tanya-Struts2-Spring-Hibernate-%28SSH%29-tp21622632p21980277.html
Sent from the JUG Indonesia mailing list archive at Nabble.com.

Kirim email ke