为什么使用@Transient Annotated不会创建相应的列...?

时间:2015-09-10 05:39:00

标签: java hibernate

为什么使用@Transient Annotated不会在数据库表中创建相应的列...?

@Transient
String getLengthInMeter() { }

如果我不使用" @ Transient"注释然后将在数据库中创建LengthInMeter列,但是如果我使用此注释,则不会在数据库中创建相应的列,任何人都可以解释为什么它不会创建我不是实际的原因......

我学习了这些链接 但仍然不理解

2 个答案:

答案 0 :(得分:0)

documentation解释的

@Transient适用于不应保留在数据库中的字段。

为什么呢?因为有时我们在课堂上有我们需要的字段但不适用于数据库。

例如,age是我们在Person对象中需要的东西,但我们不需要将其保存在数据库中。我们所需要的只是birthdate来计算age

另一个示例是fullName我们可能需要用于显示目的,但我们不会将其保存到数据库,因为我们只需要每次都连接firstNamelastName。 p>

答案 1 :(得分:0)

@Transient - 用于不持久的属性/字段。

这意味着列值/字段值不会保存在数据库中。

JPA Transient - JavaDoc