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

具有用户定义属性的Hibernate实体,hibernate,attributes,entity,defined,Hibernate,Attributes,Entity,Defined,有人能告诉我一些关于建模hibernate实体的技巧吗?这些实体有一些已知的属性,而大多数属性是由系统的用户定义的(在系统的初始设置期间) 我需要能够在稍后的时间点搜索这些用户定义的属性。首先,您需要决定如何对此进行建模。两种最常用的方法是模型和行建模 前者使用Hibernate更容易处理;但是,根据您打算使用的搜索条件,它的性能可能(非常)差。某些条件根本无法转换为单个SQL查询 后者更难实现,因为您正在考虑在运行时动态更改数据库模式和更改Hibernate的配置以匹配。如果您选择走这条路线,

有人能告诉我一些关于建模hibernate实体的技巧吗?这些实体有一些已知的属性,而大多数属性是由系统的用户定义的(在系统的初始设置期间)


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

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

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

后者更难实现,因为您正在考虑在运行时动态更改数据库模式和更改Hibernate的配置以匹配。如果您选择走这条路线,请查看我的答案以了解更多详细信息


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

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

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

后者更难实现,因为您正在考虑在运行时动态更改数据库模式和更改Hibernate的配置以匹配。如果您选择走这条路线,请查看我的答案以了解更多详细信息


另一种可能的选择是使用Hibernate对的支持,但这取决于您的搜索条件和基础数据库支持的XML功能(如果有)。这可能是可行的,也可能不是可行的选择。

您希望以键入方式使用已知属性,还是希望使用所有(已知和未知)属性属性一致性?数据类型可以不同,但我想我们可以通过获取有关字段的一些元数据信息来绕过这一部分。是否要以类型化的方式使用已知属性,还是要统一使用所有(已知和未知)属性?数据类型可以不同,但是我想我们可以通过获取一些关于这个领域的元数据信息来绕过这一部分。