gpt4 book ai didi

JPA Scheme Listener,有这种东西吗?

转载 作者:行者123 更新时间:2023-12-03 22:54:14 25 4
gpt4 key购买 nike

您可以告诉 hibernate 或任何 JPA 实现为您创建方案,问题是如果您想用默认初始记录填充表怎么办?

对于解决方案,在应用程序启动时,您可以检查表是否为空,然后创建记录,但我认为如果在方案创建后调用监听器会更合适。

最佳答案

如果你正在使用 Hibernate,你可以创建一个 import.sql (例如在 src/main/resources 中)包含初始数据的文件。在应用程序启动时,Hibernate 会选取并执行该文件。

您还可以使用专门的工具来预填充(和清空)数据库,例如 DBUnitArquillian perstistence extension .

至于最初的问题 - AFAIK 你只能访问 Entity lifecycle events在 JPA 中。从理论上讲,它们可用于检查或更改表的内容,但这是一个坏主意。

编辑:DB 播种没有可访问的 JPA 标准。甚至 Pro JPA 2 book建议使用 JDBC 设置进行播种。我认为你最好使用上述工具。我不知道像 Hibernate 的 import.sql 对 EclipseLink 有任何帮助。 ,但有 some DIY advice for a similar workaround .我希望它会有所帮助。

关于JPA Scheme Listener,有这种东西吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12366876/

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