2010-10-24 15 views
25

Ho una tabella tbl_sky che ha 2 proprietà name e model e vorrei usare l'annotazione Hibernate come;Hibernate: aggiungi una proprietà nella mia classe che non è mappata a una tabella db

@Entity 
@Table(name="tbl_sky") 
public class Sky implements Serializable { 
    private String name; 
    private String model; 
    private String status; 

    @Id 
    public String getName() { 
     return name; 
    } 
. 
. 
. 

ma ho bisogno di aggiungere un altro immobile status che non esiste nella tabella, ma è necessaria nella classe. Come potrei dichiarare tale proprietà in modo tale da averlo nella mia classe ma non nel mio db-table?

Tutto l'aiuto è apprezzato.

+0

Provalo senza annotazioni. –

+0

Lo mappa comunque come 'stato' – Adnan

risposta

46

Usa @Transient annotazione per il campo non si ha intenzione di memorizzare nel DB:

@Transient 
public String getStatus() { 
    return status; 
} 

o:

@Transient 
private String status; 
+5

può andare sul getter, o sul campo stesso. – Bozho

+0

Grazie, risposta aggiornata – Kel

5

Se si annota un campo con @Transient esso non essere mantenuta.

+0

thanx @jjungnickel – Adnan

4

Contrassegnarlo come @Transient e non farà parte dello schema DB.

Problemi correlati