如何解决我在 JPA 中使用 Value 对象时遇到问题
我必须同时在项目和JPA中使用ValueObject,但是将属性更改为valueobject时却报错,我还不知道如何解决问题
此错误:(“Id”属性类型不应为“BrandCodigo”)(“基本”属性类型不应为“BrandNombre”)
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Entity(name = "Brand")
@Table(name = "marcas",uniqueConstraints = {
@UniqueConstraint(name = "uk_marcas_nombre",columnNames = "nombre")
})
public class Brand {
@Id
@Column(name = "codigo")
private BrandCodigo codigo;
@Column(name = "nombre",nullable = false,columnDeFinition = "varchar(80)"
)
private BrandNombre nombre;
}
解决方法
当您提到 lombok 的 @Value 时,这是不可能的 afaik。 Lombok 的 @Value 用于不可变对象。
但是您的实体必须是可变的,因为 JPA 构造它的方式。
此外,值对象没有身份,但数据库实体应该有主键。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。