当前位置: 首页 > 知识库问答 >
问题:

Hibernate默认值

常坚
2023-03-14

hibernate有没有一种方法可以为每个字段定义默认值,并且为了数据库大小的缘故,可以写null而不是这些默认值?

对于inst,假设字符串的默认值为“”。我想Hibernate到:

  1. 为数据库中具有NULL的每个字段返回".
  2. 写NULL到数据库,当我尝试写"

当然,我可以写成千上万个Getters和Setters,但是它能自动完成吗?

共有2个答案

容磊
2023-03-14

您可以使用字段getters实现这样的事情,它很简单,并将达到目的。

拓拔稳
2023-03-14

如果您想要一个真实的数据库缺省值,请使用柱状定义-@柱状(name="myColiv",nullable=false,柱状定义="int默认值100")。请注意,列定义中的字符串依赖于数据库。此外,如果选择此选项,则必须使用动态插入,因此Hibernate不会在插入时包含具有空值的列。否则,谈论违约无关紧要。

但是,如果您不想要数据库缺省值,而只是Java代码中的缺省值,只需像这样初始化您的变量-私有整数我的列=100;

资料来源:

如何在Hibernate中设置默认值

当然,不要使用:

columnDefinition = “int default 100"

尝试类似的东西:

columnDefinition = “TEXT default `default_text`"

我不确定这在语法上是否正确,但请检查以下内容:

使用Hibernate注释的文本字段

在MYSQL中使用Hibernate注释设置默认值

 类似资料:
  • 问题内容: 的默认值是多少 在hibernatecfg文件映射中 是否可以删除 从配置文件映射 如果我删除此属性是否会影响我的数据库 ??? 问题答案: 创建SessionFactory时,自动将架构DDL验证或导出到数据库。使用create-drop时,显式关闭SessionFactory时将删除数据库架构。 验证现有模式 更新-创建后仅更新您的架构 每次创建-创建架构

  • 问题内容: 我正在使用Hibernate来持久化该bean。 有什么用? 问题答案: CascadeType 默认为空数组 。请参见注释类型OneToOne中的CascadeType。 默认情况下,没有操作级联。

  • 问题内容: 我面对的是Hibernate遇到的一个简单问题,但无法解决(无法访问的Hibernate论坛当然无济于事)。 我有一个简单的课程想继续学习,但是请继续学习: 持久化类的相关代码为: 实际的运行代码很简单: 我在注解中尝试了一些“策略”,但似乎不起作用。初始化也无济于事!(例如)。 谁能给我一些启示? 编辑2: 确认:不能解决问题 求助: 重新创建数据库解决了问题 问题答案: 有时,即使

  • 我有对象类,这是映射到Oracle数据库表。在这个类中,一列有一个默认值在数据库中。我用了这个:@列(名称="FK_STATUS", nullable=假,列定义="int默认值1")在数据库中的列类型是数字。但我得到"不能插入null在FK_status"错误。请帮助。

  • 问题内容: Hibernate使用的默认缓存的名称是什么?甚至有默认的缓存,还是必须添加缓存提供程序才能利用缓存? 我以为是EHCache,但我认为必须对其进行配置…默认情况下它不是“那里” … 问题答案: Hibernate已经通过持久上下文提供了一种称为 一级缓存 的缓存机制。它在 Session作用域内,默认情况下处于启用状态,无法关闭。 诸如EHCache之类的缓存提供程序提供了另一种称为

  • 所以我有一个三层应用程序。通过spring boot starter jpa自动配置hibernate。以及使用@EnableJpaRepositories(enttityManagerFactory、transactionManager、basepackages)的配置类 我的问题是,如果控制器调用从数据库获取实体的服务,那么该服务是否可以将该实体传递给其他组件,而不会分离,考虑到它仍然是同一个