gpt4 book ai didi

java - 要映射的实体<字符串,对象>

转载 作者:行者123 更新时间:2023-12-02 04:35:57 25 4
gpt4 key购买 nike

我想澄清一下是否可以创建 Map<String, Object>通过 Hibernate 从 JPA 实体。我的意思是是否可以将持久对象(实体)转换为包含所有实体属性作为键和属性值作为值的映射。我知道可以通过反射检索属性,但我不知道如何将其映射到正确的值。我只找到了一个解决方案,那就是使用 Spring 的 JdbcTemplate,但在我的情况下这不是一个选择。如果有人有可能的解决方案,请告诉我。预先感谢您。

最佳答案

您可以尝试使用@Converter,如下所示

@Entity
public class SomeEntity{
@Id
//...
@Convert(converter = MyConverter.class)
Map<String,Object> map;
}

并根据需要构建转换器,例如与 json 相互转换

@Converter
public class MyConverter implements
AttributeConverter<Map<String, Object>, String> {

@Override
public String convertToDatabaseColumn(Map<String, Object> map) {
return jsonStr(map);
}
@Override
public Map<String, Object> convertToEntityAttribute(String s) {
return mapFromJson(s);
}

关于java - 要映射的实体<字符串,对象>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30742538/

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