使用Hibernate在运行时使用未知数据库构建对象

时间:2012-11-20 09:53:39

标签: java hibernate orm

我对Hibernate有疑问。

我希望连接到数据库并获取有关表(其所有列及其元数据 - 数据类型,排序规则,索引,描述,键等)的信息,同时使用java运行时。

开发时我无权访问此数据库。 java应用程序将安装在不知道它们是数据库的其他公司中。是否可以使用Hibernate来实现这一目标?

我无法在xml中创建映射或使用注释,因为我不知道模式/表/列。

换句话说,或许: 是否可以在应用程序运行时创建xml映射?从这个xml文件创建对象并在运行时从创建的对象中读取属性?

我希望这个问题现在更清楚了。

4 个答案:

答案 0 :(得分:7)

实际上这是可能的,虽然非常困难!

这篇文章将帮助您入门:      http://www.manydesigns.com/en/blog/configuring-hibernate-programmatically-part-2

答案 1 :(得分:1)

你为什么要用Hibernate做这个?这似乎更像是常规JDBC的工作。如果您说的是真的,那么您想要做的就是获取数据库元数据。

http://docs.oracle.com/javase/6/docs/api/java/sql/ResultSetMetaData.html

答案 2 :(得分:0)

在Hibernate中不可能。

使用Hibernate强制将您的类文件映射到数据库表。如果不了解数据库模式,就无法获得这些细节。

答案 3 :(得分:0)

不可以使用Hibernate