是否可以从JHipster中的现有数据库模型生成实体?

有没有一种方法可以从现有数据库模型生成实体,或者我必须自己用yeoman(yo)创建所有实体?

我从Spring Roo项目中听说过这种技术。

Indivon

不,您不能,因为jhipster yeoman生成器“仅”根据模板+给定的参数/选择来搭建实体。在此步骤中,它不会询问外部来源,例如数据库。

生成器为jpa,angular和liquibase更改日志创建所有文件。最后,liquibase在启动过程中使用更改日志创建表(如果尚不存在)。

因此,可以说jhipster使用“实体优先”而不是“表优先”的方法。

尽管这将是一个不错的功能,但我认为它不会集成到jhipster中,因为现有数据库是如此不同,以致于很难处理每种可能性。主键有不同的选择,不同的数据类型,多对多关系或概括的不同实现等。或者您可以在Github上请求一个新功能,也许可以实现...

但是,给出一些指导:我也遇到了同样的情况,我试图将现有的大约50个表和大量数据的数据库迁移到jhipster(这是jhipster 1.6左右),而且我还想到了“数据库重构” [1]。但是,我的“解决方案”是使用jhipster创建一个新数据库,然后使用一些sql语句将数据从旧数据库迁移到新数据库。主要原因:

  • 我有另一个不同于jhipster预期模型的数据库模型(例如,我使用了其他主键和引用)
  • 没有存储库或有角度的东西(这是我使用jhipster的主要原因)
  • liquibase更改日志丢失[2]
  • 当您尝试针对现有表生成Jhipster实体时,这种特殊的重构之后会引起很多其他更改。与使用jhipster创建新实体相比,这些更改可能更加耗时。
  • 这些更改也可能导致功能升级方面的问题

是的,roo具有用于逆向工程或重构数据库的技术(http://docs.spring.io/spring-roo/reference/html/base-dbre.html)。AFAIK,它仅创建基于JPA的符合roo规范的实体。因此,它与jhipster使用的spring数据JPA也有所不同(与其他jpa反映工具(如[1])相同)

[1]我使用了一个Eclipse JPA插件,该插件以前可以从另一个基于dropwizard的项目中的现有数据库中创建jpa实体类。但是,我没有将它与Spring / Jhipster结合使用。

[2]可以从现有数据库创建liquibase更改日志:http : //www.liquibase.org/documentation/generating_changelogs.html

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从ASP.NET MVC中的现有数据库生成种子代码

来自分类Dev

使用现有数据库的实体框架代码优先迁移策略

来自分类Dev

实体框架首先在现有数据库中的单个新架构上使用代码

来自分类Dev

在APK中包含现有数据库

来自分类Dev

如何使用实体框架将POCO模型类映射到现有数据库表

来自分类Dev

使用现有数据库,而无需通过播放框架中的模型创建数据库

来自分类Dev

在我的域模型中有数据库上下文是否可以

来自分类Dev

从现有数据库生成实体

来自分类Dev

在代码优先现有数据库中的实体框架中以多对多关系更新数据

来自分类Dev

如何从现有数据库结构生成模型

来自分类Dev

NET 7中具有现有数据库的实体框架7

来自分类Dev

如何从数据库中的现有数据生成子弹字段-Doctrine Symfony2

来自分类Dev

使用实体框架将模型映射到现有数据库表

来自分类Dev

实体框架-添加现有数据库

来自分类Dev

如何使用随机生成的ID将现有数据更新到Firebase实时数据库中的数据

来自分类Dev

是否可以使用.Net EF Core从现有数据库加载部分对象方案?

来自分类Dev

从ASP.NET MVC中的现有数据库生成种子代码

来自分类Dev

用现有数据库生成支架

来自分类Dev

在APK中包含现有数据库

来自分类Dev

使用实体框架和现有数据库错误:尽管有数据注释,但“无效列”

来自分类Dev

实体框架可以用于部分映射现有数据库吗?

来自分类Dev

无法从Postgresql中的现有数据库创建模型,postgresql的.NET提供程序不存在

来自分类Dev

在代码优先现有数据库中的实体框架中以多对多关系更新数据

来自分类Dev

是否可以在Teradata中的所有数据库中搜索所有对象?

来自分类Dev

现有数据库中的Azure搜索

来自分类Dev

将模型对象链接到 Vapor 中的现有数据库表

来自分类Dev

如何从现有数据库更新 Symfony 实体?

来自分类Dev

是否可以通过 REST API 列出 Azure 中的所有数据库

来自分类Dev

id 主键是否必须在从检查数据库生成的 Django 模型中针对现有数据库显式定义?

Related 相关文章

  1. 1

    从ASP.NET MVC中的现有数据库生成种子代码

  2. 2

    使用现有数据库的实体框架代码优先迁移策略

  3. 3

    实体框架首先在现有数据库中的单个新架构上使用代码

  4. 4

    在APK中包含现有数据库

  5. 5

    如何使用实体框架将POCO模型类映射到现有数据库表

  6. 6

    使用现有数据库,而无需通过播放框架中的模型创建数据库

  7. 7

    在我的域模型中有数据库上下文是否可以

  8. 8

    从现有数据库生成实体

  9. 9

    在代码优先现有数据库中的实体框架中以多对多关系更新数据

  10. 10

    如何从现有数据库结构生成模型

  11. 11

    NET 7中具有现有数据库的实体框架7

  12. 12

    如何从数据库中的现有数据生成子弹字段-Doctrine Symfony2

  13. 13

    使用实体框架将模型映射到现有数据库表

  14. 14

    实体框架-添加现有数据库

  15. 15

    如何使用随机生成的ID将现有数据更新到Firebase实时数据库中的数据

  16. 16

    是否可以使用.Net EF Core从现有数据库加载部分对象方案?

  17. 17

    从ASP.NET MVC中的现有数据库生成种子代码

  18. 18

    用现有数据库生成支架

  19. 19

    在APK中包含现有数据库

  20. 20

    使用实体框架和现有数据库错误:尽管有数据注释,但“无效列”

  21. 21

    实体框架可以用于部分映射现有数据库吗?

  22. 22

    无法从Postgresql中的现有数据库创建模型,postgresql的.NET提供程序不存在

  23. 23

    在代码优先现有数据库中的实体框架中以多对多关系更新数据

  24. 24

    是否可以在Teradata中的所有数据库中搜索所有对象?

  25. 25

    现有数据库中的Azure搜索

  26. 26

    将模型对象链接到 Vapor 中的现有数据库表

  27. 27

    如何从现有数据库更新 Symfony 实体?

  28. 28

    是否可以通过 REST API 列出 Azure 中的所有数据库

  29. 29

    id 主键是否必须在从检查数据库生成的 Django 模型中针对现有数据库显式定义?

热门标签

归档