Hazırda Listeleme
Genellikle yararlı bir Java numaralandırma geliyor olan bir DAO bir alan var. Tipik bir örnek olarak genellikle kullanıcı karakterize bir alan olduğu bir oturum açma DAO "NORMAL" ya da "". ADMİN Hazırda Beklet, aşağıdaki 2 nesneleri (yarı)typesafe bir şekilde bu ilişkiyi göstermek için kullanın.
class User {
String username;
String passwd;
UserType type;
}
class UserType {
private enum Type {ADMIN, NORMAL};
private String type;
//Setters/Getters for Hibernate
public void setType(String type);
public String getType();
//Setters/Getters for user
public void setUserType(UserType.Type t);
public UserType.Type getUserType();
public static UserType fromType(UserType.Type t);
}
Bu çalışır, ama UserType sınıf ungly ve çok değerleri bir kaç Mağaza için bürokrasi gerektiren buluyorum. İdeal olarak, Hazırda numaralama alanları doğrudan destek ve numaralandırma değerleri saklamak için ekstra bir tablo oluşturmak istiyorsunuz.
Benim soru şudur: doğrudan Hazırda bir numaralandırma sınıfı göster için herhangi bir yolu var mı? Temsil eden numaralandırma için benim desen yeterince iyi değil ya da ben bir şey eksik? Diğer düzenlerde insanlar ne kullanıyorsunuz?
CEVAP
Uyku veya JPA ek açıklamaları kullanarak:
class User {
@Enumerated(EnumType.STRING)
UserType type
}
UserType sadece standart java 5 numaralama.
Bu sadece ek açıklamalar ile sınırlıdır sadece hayal bile edemiyorum ama aslında hbm dosyaları ile bunu yapmak için nasıl bilmiyorum. Çok sürüm bağımlı olabilir diye tahmin ediyorum ama hazırda 3.2 gerekli olduğuna gayet eminim.
bir hbm içinde mümkündür, ama biraz dağınıktır, forum thread şuna bir bak . edit:
Nasıl satır Hazırda kullanan sayısı mı...
Diff Listeleme çıkmak için nasıl Git d...
Hazırda kriterler: eşleşen bir dernek ...
Oraya Git bir şekilde depodaki tüm sil...
Yeniden takmak Hazırda bulunan nesnele...