从Hibernate模型生成图表

4
我有一份遗留的Spring+Hibernate应用程序的代码库和SQL创建脚本需要退役和迁移。我的Java知识(以及旧框架)有限,因此生成模型图可能有助于理解旧数据(和逻辑)。
SQL脚本没有外键,但注意到使用Hibernate注释的XML具有字段及其关系的模型。
从这些Hibernate XML生成模型图的最简单方法是什么?可以安装DjangoGraphviz来在瞬间生成模型图。是否有类似Hibernate的方法/工具?

1
抱歉,但我认为将Spring和Hibernate称为遗留框架有些大胆!使用XML映射实体可能有点“老派”。 - André R.
2个回答

5
使用Hibernate时,实体之间具有Java引用,因此任何可视化类依赖关系的工具都可能有所帮助。 我是它的作者,所以我显然推荐Degraph,但市面上有很多其他工具。只需在Google中搜索Java依赖关系可视化即可。

你能告诉我如何使用Hibernate吗?我现在正在查看文档。 - Jesvin Jose
@Jens Schauder 不错的工具!当我看到你的回答时,我想起了一个关于它的JUG演讲。 - André R.
即使使用了“-Xmx2500m”,仍然会抛出“java.lang.OutOfMemoryError:Java堆空间”错误。如何缓解? - Jesvin Jose
请确保您仅分析自己的代码(而不是完整的JDK和依赖项)。如果这不能解决问题,请在GitHub上创建一个问题或在StackOverflow上提出一个问题。如果您选择后者,请通过此处的评论告诉我。 - Jens Schauder
谢谢@AndréR。我也喜欢它 :-> - Jens Schauder
我在degraph上提出了一个具体的问题:https://stackoverflow.com/questions/31294201/how-to-use-degraph-to-graph-only-models - Jesvin Jose

1

我不知道有什么直接的工具可以做到这一点。

  • 当然,您可以自己完成。例如,使用XSLT将您的XML映射文件转换为GraphML(XML)格式,并使用像“yed”(https://www.yworks.com/en/products/yfiles/yed/)这样的工具来布局和绘制漂亮的图表。

  • 作为理解遗留代码的工具,doxygen对我很有用,因为它允许您同时浏览软件包结构、源代码、Javadoc和生成的UML图。

  • 如果您需要在数据库级别上了解结构...我发现Schemacrawler非常有帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接