小编Yos*_*iya的帖子

Kotlin、JPA 和 @Transient

我有一个实体类,已从 Java 迁移到 Kotlin。其中一个属性 ( inetAddress) 带有注释,@Transient以防止其被持久化到关系数据库。但是,JPA(Hibernate 实现)看不到此注释,并将其作为自己的字段放入数据库中。当类是用 Java 编写时,这一切都可以正常工作。

有谁知道如何正确注释这个 Kotlin 类,以便 JPA/Hibernate 能够看到注释@Transient而不是将inetAddress属性放入数据库中?

package infr.audio.model

import com.fasterxml.jackson.annotation.JsonIgnore
import com.fasterxml.jackson.annotation.JsonProperty
import infr.audio.messages.InetAddressWrapper
import java.io.Serializable
import java.net.InetAddress
import javax.persistence.Column
import javax.persistence.Entity
import javax.persistence.GeneratedValue
import javax.persistence.Id
import javax.persistence.NamedQueries
import javax.persistence.NamedQuery
import javax.persistence.Table

@Entity
@Table(name = "DIS_JOCKEY")
@NamedQueries(NamedQuery(name = "DisJockeyInfo.find", query = "SELECT m FROM DisJockeyInfo m"), NamedQuery(name = "DisJockeyInfo.findByReservationId", query = "SELECT m FROM DisJockeyInfo m WHERE m.reservationId = :reservationId"), NamedQuery(name = "DisJockeyInfo.findByReservationIdAndName", query …
Run Code Online (Sandbox Code Playgroud)

hibernate jpa-2.0 kotlin

3
推荐指数
1
解决办法
4188
查看次数

标签 统计

hibernate ×1

jpa-2.0 ×1

kotlin ×1