具有用户定义属性的Hibernate实体

时间:2009-11-09 02:52:10

标签: hibernate attributes entity defined

有人可以给我一些关于建模具有一些已知属性的hibernate实体的建议,而大多数是由系统用户定义的(在系统初始设置期间)

我需要能够在以后的某个时间搜索这些用户定义的属性。

1 个答案:

答案 0 :(得分:1)

首先,您需要决定如何对此进行建模。两种最常见的方法是Entity-Attribute-Value模型和行建模。

前者(使用Hibernate)更容易处理;但是,根据您打算使用的搜索条件,它可能会(非常)表现不佳。某些条件根本无法转换为单个SQL查询。

后者更难实现,因为您正在考虑在运行时动态更改数据库模式并更改Hibernate的配置以匹配。如果您选择这条路线,请查看我对How to map dynamically created table in Hibernate的回答,了解更多详情。

另一种可能的替代方法是使用Hibernate对XML mapping的支持,但同样,根据您的搜索条件和基础数据库支持的XML功能(如果有的话),这可能是也可能不是一个可行的选择。