2010-10-24 38 views
25

我有一个表tbl_sky,它具有2个属性namemodel,我将使用Hibernate注释类似;休眠:添加我的类中没有映射到db-table的属性

@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; 
    } 
. 
. 
. 

但我需要添加更多的财产status不存在于表中,但需要在类。我怎么能声明这个属性,让我在我的课堂上,而不是在我的数据库表中?

所有帮助表示赞赏。现场

+0

尝试没有任何注释。 – 2010-10-24 13:33:13

+0

它无论如何映射它作为'状态' – Adnan 2010-10-24 13:34:33

回答

46

使用@Transient注解你不会在数据库存储:

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

或:

@Transient 
private String status; 
+5

它可以去吸气剂,或在领域本身。 – Bozho 2010-10-24 13:41:45

+0

谢谢,更新回答 – Kel 2010-10-24 14:07:45

5

如果某个字段标注为@Transient它不会被持久化。

+0

thanx @jjungnickel – Adnan 2010-10-24 13:36:54

4

将它标记为@Transient,它不会是数据库模式的一部分。