2016-04-11 19 views
0

Bir db'den Java'daki veri geçişi üzerinde çalışıyorum. Sorunlarımdan biri, varlıkların aynı kimlik değerlerini tutmam gerektiğidir.Hazırda bekletme - el ile kimlik nasıl oluşturulur?

Kimlik üreticisini değiştirmenin mümkün olduğunu biliyorum, ancak kimliği el ile ayarlamanız gerekiyor. Eski nesneden yeni bir nesneye kullanarak oluşturduğum her varlık ve değerleri ayarladım.

Map<String, Object> newEntity = new HashMap<String, Object>() 
newEntity.setId(oldEntity.get("id")) 

cevap

0

Bunu yapmayı başardım. Benim varlıkta aşağıdaki ayarlayın:

@Id 
private String id 

private Date created 
private Date modified 

static mapping = { 
    id column: 'id', generator: 'assigned' 
} 
asfsafas 
sfasfsaf 
public String getId() { 
    return id; 
} 
public void setId(String id) { 
    this.id = id; 
} 

public Date getCreated() { 
    return created; 
} 

public void setCreated(Date created) { 
    this.created = created; 
} 
public Date getModified() { 
    return modified; 
} 
public void setModified(Date modified) { 
    this.modified = modified; 
} 

ve işe yaradı. Teşekkürler!

0

buna göre

 HashMap newmap = new HashMap(); 

     // populate hash map here you can assign your map values 
    newmap.put(1, "tutorials"); 
    newmap.put(2, "point"); 
    newmap.put(3, "is best"); 

    // get keyset value from map 
    Set keyset=newmap.keySet(); 

    // check key set values 
    System.out.println("Key set values are: " + keyset); 
0

manuel şekilde ayarlayabilirsiniz haritası meathod mapobject.keyset (kullanarak değerleri) harita ve ardından değerlerini işlemek: Sadece gibi bir şey elle ayarlayamıyor Kodunda açıkladın.

Ancak, yeni varlığın bunu bildiğinden emin olmanız gerekir. Birincil anahtarınıza @Id ek açıklaması eklerseniz (no @GeneratedValue, ...) ve veritabanının da otomatik olarak bir kimlik üretmediğinden emin olmalısınız.

+0

sayesinde Bu harika ve Gorm Yani kullanarak bir Grails proje ben @GeneratedValue hangi kullanmalıdır edilir? Ben belirtildiği gibi özel: \t Özel String id ve sonra: statik haritalama = { \t \t tablo 'pano' \t \t yaprak sütun: 'dashboardId', joinTable: false \t \t id sütunu: 'id', jeneratör: 'atanan' \t} –

+0

@TomerKfir Çözümü bulduğuna sevindim. Ama gönderdiğim çözümde: asfsafas sfasfsaf – mahieus