我想通过Java代码手动设置列的类型(尚未创建表)。 String
在数据库中应该是text
类型,而LocalDate
应该是date
类型。 Afaik没有映射,String
将被映射为VARCHAR
类型。
实体:
@Entity
@Table(schema = "subscribers_service", name = "subscribers")
public class Subscriber {
@Id
@Column(name = "email")
private String email;
@Column(name = "subscription_date")
private LocalDate dateOfSubscription;
}
所以我想要这个:
@Id
@Column(name = "email")
@DatabaseType(name = "text")
private String email;
我正在使用PotsgreSQL。可能吗?还是我应该手动创建具有所需列类型的数据库?
答案 0 :(得分:1)
您可以使用注释@Column
通过Java代码设置数据库列类型
您所要做的就是在注释中添加columnDefinition
示例
@Column(name = "email", columnDefinition = "text")
和
@Column(name = "subscription_date", columnDefinition = "date")
希望这很有帮助。