Tom*_*rik 2 json jpa spring-boot
在我的Spring Boot应用程序中,我有这样的实体:
@Entity
@Table(name = "UserENT")
public class User implements Serializable {
@Id
private String id;
private Data data;
...
Run Code Online (Sandbox Code Playgroud)
我想实现该对象数据将以json格式存储在DB中.但是从DB中选择时,它将映射到Data对象上.
谢谢你的建议.
你可以实现一个javax.persistence.AttributeConverter,如:
public class DataJsonConverter implements AttributeConverter<Data, String> {
private ObjectMapper objectMapper = ...;
@Override
public String convertToDatabaseColumn(Data data) {
try {
return objectMapper.writeValueAsString(data);
} catch (JsonProcessingException e) {
throw new RuntimeException("Could not convert to Json", e);
}
}
@Override
public Data convertToEntityAttribute(String json) {
try {
return objectMapper.readValue(json, Data.class);
} catch (IOException e) {
throw new RuntimeException("Could not convert from Json", e);
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以通过注释您的字段来使用它:
@Convert(converter = DataJsonConverter.class)
private Data data;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1973 次 |
| 最近记录: |