开发者

how does hibernate map its columns to DB

开发者_运维知识库I thought when I have a class that I add the @Entity to it and also map it to a table, then when on a get property I add the @Column attribute and tell it what column of that table it should map it to... then I saw the @Transient annotation and it says if we add @Transient to a get, then Hibernate will Not save it to DB...so then I got confused: so does it mean default behaviour of Hibernate is to map every get to a similar named column in DB?


Every non static non transient property (field or method depending on the access type) of an entity is considered persistent, unless you annotate it as @Transient. Not having an annotation for your property is equivalent to the appropriate @Basic annotation. The @Basic annotation allows you to declare the fetching strategy for a property:

@official hibernate documentation


See http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html_single/#entity-mapping-entity.

Depending on where you put the @Id annotation (on a field or on a getter), all fields or getters not marked with @Transient will automatically be made persistent, with a default column name.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜