gpt4 book ai didi

java - 将java语言映射到数据库

转载 作者:行者123 更新时间:2023-12-02 07:46:26 26 4
gpt4 key购买 nike

我想在数据库模式中表示一些 Java 概念。我的意思不是将实例持久保存到 Hibernate 中,而是将 java 的类型系统表示为一系列表和行。

例如,对于类型,我想表示一组确定的关系。例如,Java中有两种类型,原始类型和引用类型,原始类型分割为数字和 boolean 类型,数字分割为整型和浮点类型,整型分割为字节短整型长型,字符类型和浮点类型分割分为 float 和 double (我想我是对的)。

Java 也有类,类有方法,方法有签名和构造函数以及返回类型和参数,两者都有某种类型。

所以我想创建一个以 3NF 形式表示此类信息的数据库。这样的数据库将允许查询对象实例,这些对象实例将是放入数据库的数据。

有这样的事情吗?我在 Google 中没有找到任何有用的东西,也许是因为很难编写一个不让您进入 JDBC 和 Hibernate 领域的查询。不过,我认为一定有人已经这样做了;也许甚至还有我不知道的标准或 RFC。

我不想尝试对 hibernate 之类的东西的某些方面进行逆向工程。我认为这实际上是一项艰巨的任务,但返回却很少。这并不是说我不能从头开始做(在通常的错误开始和犯下错误之后),而是我想知道它是否还没有在某个地方完成和规范。

非常感谢。

最佳答案

Object-Relational Impedance Mismatch是一个难题。如果您不想深入研究 Hibernate 或其他 ORM 层来尝试弄清楚它们是如何做到的,那么您将不得不自己重新发明轮子。

我们可以提出概念表示,例如对象表...并且您可以使用像 Hibernate 使用的继承策略。但如果你想捕获方法,你就必须弄清楚这一点(方法 - 对象关系?)如果你想捕获 @Override 的能力,你就必须弄清楚这一点。注释?等等等等

"I want to represent some java concepts in a database schema...which I think would actually be a large task with little payoff."

我想你已经回答了你自己的问题。您可能想问的问题是:“对于我真正想做的事情,有更好的方法吗?”

关于java - 将java语言映射到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10779644/

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