因此,基本上,我正在尝试为我的应用程序的全局、系统范围的配置实现一个简单的键值存储,为此,我想Map一个完整的 java.util.Map
到数据库中的一个表?例如:
// initialization
globalConfig.put("property1", "130")
globalConfig.put("property2", "abc")
globalConfig.put("propertyXY", "0")
Map到:
全局配置:
| key | value |
|------------|-------|
| property1 | 130 |
| property2 | abc |
| propertyXY | 0 |
使用jpa/hibernate有没有一种简洁明了的方法来实现这一点?
2条答案
按热度按时间k10s72fa1#
如果这个Map与一个表相对应(我认为这是您想要实现的),那么您需要加载所有条目并自己将其转换为Map。我不会把它放在数据层,最好能为它提供一个服务。
如果您想为一个条目在列上存储一个Map,我认为您需要一个json字段,如这里所述https://vladmihalcea.com/how-to-map-json-objects-using-generic-hibernate-types/ 或者在这里https://bootify.io/docs/persist-json-with-spring-data-hibernate.html.
dsekswqp2#
你必须把它Map成一个实体。像这样:
如果你想要一张Map,你就必须转换一张Map
List<GlobalConfig>
到Map<String, String>
例如,通过大致如下所示的流操作: