gpt4 book ai didi

java - 了解 hibernate @Type 注解

转载 作者:搜寻专家 更新时间:2023-10-30 19:55:20 24 4
gpt4 key购买 nike

来自official hibernate documentation :

@org.hibernate.annotations.Type overrides the default hibernate type used: this is generally not necessary since the type is correctly inferred by Hibernate

文档中有一个示例:

@Type(type="org.hibernate.test.annotations.entity.MonetaryAmountUserType")
@Columns(columns = {
@Column(name="r_amount"),
@Column(name="r_currency")
})
public MonetaryAmount getAmount() {
return amount;
}

我不明白。我们声明了 @Type(type="org.hibernate.test.annotations.entity.MonetaryAmountUserType") 但该方法的返回值的类型为 MonetaryAmount

我希望类型注释中声明的类型和返回值的类型应该是同一类型。

有人不能解释在 @Type 注释中声明的类型的实际用途。为什么它与返回的类型不同?

最佳答案

返回类型和@Type有区别.

@Type注释用于 hibernate ,即告诉您要在数据库中存储什么类型的数据。

举个简单的例子:

@Type(type="yes_no")
private boolean isActive;

这里的返回类型是boolean,但存储在数据库中的值将是YN格式,而不是/

以同样的方式,您可以将对象映射到数据库列。检查here以获得更详细的解释。

关于java - 了解 hibernate @Type 注解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29118210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com