当前位置: 首页 > 面试题库 >

如何使用Hibernate将初始数据导入数据库?

倪鸿禧
2023-03-14
问题内容

部署应用程序时,我经常使用Hibernate的功能来创建数据库架构,以简化部署。通过配置hibernate.hbm2ddl.auto属性可以轻松实现。

但是,有时我还需要向数据库中插入一些初始数据,例如root用户。有什么办法可以通过hibernate并加载某种文本文件来实现?

我知道我可以很容易地对将要执行此操作的代码进行编程,但是只是想知道是否已经有一些实用程序可以帮助我通过配置实现相同的目标?


问题答案:

我通过搜索“hibernate装置”发现了这一点:

创建实体管理器工厂时(实际上是由实体管理器工厂创建Hibernate的SessionFactory时),Hibernate将创建数据库。如果在类路径的根目录(’/import.sql’)中存在一个名为import.sql的文件,则Hibernate将在创建数据模式后执行从该文件读取的SQL语句。重要的是要记住,在Hibernate创建架构之前,它会清空它(删除在构建架构的过程中将要创建的所有表,约束或任何其他数据库对象)。

资料来源:http :
//www.velocityreviews.com/forums/t667849-hibernate-quotfixturesquot-or-
database-
population.html


试试看,让我们知道它是否有效!



 类似资料:
  • 问题内容: 首次启动应用程序后,我需要向SQLite数据库添加初始值。我该怎么办? 问题答案: 在DBAdapter.java类文件中,您可以执行此操作。 喜欢这种类型。

  • 问题内容: 我正在循环列表并将其插入数据库中,但它得到的更新记录一个接一个。最后我只在列表中的数据库最后一条记录中看到。 输入名称:Linux,Windows,Mac hibernate.cfg.xml: 这里有3次获得循环并插入数据库。但是以某种方式覆盖了这些值。因为我看到sql插入和更新在控制台中运行。 请帮助我将多个行插入数据库。 问题答案: Hibernate文档中有一章非常好的关于批处理

  • 问题内容: 我正在开发一个费用跟踪程序,在该程序中,我希望在应用程序首次启动时用一些记录填充数据库。我试图在我的启动活动中调用该方法并添加数据。但是,当我清除我的应用程序数据并第一次启动该应用程序时,会发生错误,提示没有此类列。 日志猫错误如下所示。 首次启动应用程序时,如何填充数据!只有几条记录,所以我不担心性能。 这将是一个很大的帮助! 谢谢。 数据库代码 我用来添加记录的方法 字符串值: 问

  • 我正在尝试将mysql数据库导入新版本的xampp(v7.1.8)。按下导入按钮后,我收到数百条此错误消息: 请注意.\vendor\phpmyadmin\sql parser\src\UtfString.php#128未初始化字符串偏移量:516 回溯 .\vendor\phpmyadmin\sql parser\src\Lexer.php\823:phpmyadmin\SqlParser\Ut

  • 问题内容: 我是自动化测试和dbUnit的新手。因此,感谢您的建议。 我将创建一个测试套件,它将以以下方式运行: 创建一个内存中的H2数据库 运行DDL脚本以创建表 运行dbUnit来插入将被所有测试使用的初始数据(我们称其为 STATE0 )。 运行测试 到那里对我来说看起来不错,但是我不明白,是在测试运行并更改数据后如何将数据库还原为 STATE0 ? 我可以使用dbUnit吗? 还是其他?

  • 我正在尝试创建一个表: create表格生成DATE raw(255)not null,我需要它是DATE,我读入它并试图创建一个转换器: 但一切都没有改变,我错过了什么?