@Column和@get:Column之间的HibernateKotlin差异?

k75qkfdt  于 2022-12-19  发布在  Kotlin
关注(0)|答案(1)|浏览(135)

HibernateKotlin中的@get:Column和@Column有什么区别?

kmb7vmvb

kmb7vmvb1#

@get:Column将注解应用于属性的getter方法,而@Column最终注解底层字段。在Hibernate中,这两种方法的效果大致相同,尽管可能存在some small differences
@get:Column中的get:前缀是一个use-site目标。当Kotlin中的一个东西对应于Java中的多个东西时,它很有用。use-site目标选择注解应该应用于哪些Java东西。
例如,在Java中,Kotlinval属性可以表示为带有getter方法的字段。@Column注解可以应用于字段和方法,因此从JavaAngular 来看,将该注解应用于Kotlin属性在某种意义上是不明确的。它可以应用于底层字段或getter方法。
使用@get:Column指定注解应该专门应用于属性的getter方法,而不是字段。省略use-site目标意味着Kotlin将尝试为您选择一个。从Column注解可以拥有的两个目标中,Kotlin将默认选择field。如果您想专门针对字段,也可以指定@field:Column

相关问题