gpt4 book ai didi

java - 在 postgresql 中使用 hibernate 注释设置列的默认值

转载 作者:搜寻专家 更新时间:2023-11-01 03:21:56 24 4
gpt4 key购买 nike

我想使用 hibernate 注释在我的表中设置整数值的默认值。它可以工作,但是当我将默认值设置为 1 时,它总是在数据库中将其设置为零。我不知道我做错了什么。任何帮助将不胜感激

这是我正在使用的

@Column(name = "interval",nullable = false, columnDefinition = “int default 1")
private int interval;

我已经检查了几乎所有我不知道的链接,当我将值设置为 1 那么为什么 0 被存储在数据库中

我知道我们可以这样做

@Column(name = "interval",nullable = false, columnDefinition = “int default 1")
private int interval = 1;

但我不想像上面那样设置值我想知道如何使用 hibernate 设置默认值

我已经看过这些链接 How to set default value in Hibernate Set default values using hibernate annotations in MYSQL

最佳答案

那是因为注释描述的是列,而不是数据。

Hibernate 不知道原始值是被用户更改还是默认保持不变。

在 java 中,原始整数默认初始化为 0。如果您希望间隔默认为 1,则需要这样的东西。

@Column(name = "interval",nullable = false, columnDefinition = “int default 1")
private int interval = 1;

或者另一种方法是将间隔声明为整数:

@Column(name = "interval",nullable = false, columnDefinition = “int default 1")
private Integer interval;

关于java - 在 postgresql 中使用 hibernate 注释设置列的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28194056/

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