gpt4 book ai didi

java - @Temporal 优于@Column columnDefinition 吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:03:47 24 4
gpt4 key购买 nike

哪个是最佳实践?

@Column(name = "FOO", columnDefinition = "TIMESTAMP")
private Date foo;

或者

@Column(name = "FOO")
@Temporal(TemporalType.TIMESTAMP)
private Date foo;

文档表明使用 columnDefinition 是不可移植的......

最佳答案

The documentation suggests that using columnDefinition is non-portable ...

没错。 columnDefinition指定将使用的 SQL 数据类型。然而,这种数据类型可能并非在所有 RDBMS 中都可用。在 JPA 中,JPA 提供者有责任弄清楚什么 SQL 在什么数据库上工作。您可以指定该配置的一部分,但您将始终冒着破坏对某些数据库的支持的风险。

@Temporal另一方面是作为 JPA 标准一部分的抽象。每个 JPA 提供程序都必须能够将不同类型的 @Temporal 映射到所有受支持数据库的不同 SQL 类型。

关于java - @Temporal 优于@Column columnDefinition 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6744195/

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