Java LocalDate应该如何作为JSON属性存储在HibernateJPA的PostgresJSONB列中?
我在postgres表中有一个jsonb列。相应的JPA实体字段是具有LocalDate属性的Java DTO。LocalDate字段以列表的形式存储在postgres中 JAVA实体:Java LocalDate应该如何作为JSON属性存储在HibernateJPA的PostgresJSONB列中?,java,postgresql,hibernate,jpa,jackson,Java,Postgresql,Hibernate,Jpa,Jackson,我在postgres表中有一个jsonb列。相应的JPA实体字段是具有LocalDate属性的Java DTO。LocalDate字段以列表的形式存储在postgres中 JAVA实体: @Entity @Table(name = "my_entity") public class MyEntity { @EmbeddedId private EmbeddedId embeddedId; @Type(type = "jsonb")
@Entity
@Table(name = "my_entity")
public class MyEntity
{
@EmbeddedId
private EmbeddedId embeddedId;
@Type(type = "jsonb")
@Column(name = "jsonb_column", columnDefinition = "jsonb", nullable = false)
private JavaDto javaDto;
}
JavaDto.java:
@Data
@Builder
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
public class JavaDto
{
private LocalDate localDate;
private String type;
private String id;
}
my_表中的样本行
postgres表:
id | 90
other_col | OTHER_COL_VAL
jsonb_column | {"id": "123-some-id", "type": "someType", "localDate": [2021, 10, 13]}
creation_time | 2020-11-02 15:44:42.134+05:30
last_modified_time | 2020-11-02 15:44:42.134+05:30
存储localDate的格式正在创建问题,以便使用where子句运行读取查询。
任何帮助都将不胜感激
我正在使用Hibernate作为JPA实现。您是否有任何类型的注册转换器:@type(type=“jsonb”)?我没有明确定义任何转换器。您的项目是否具有
com.vladmichalcea:Hibernate-types-52
依赖关系?是的,这有什么帮助吗?我没有检查。只是检查了一下,工件id是hibernate-types-43(不是52)。您是否有任何类型的注册转换器:@type(type=“jsonb”)?我没有明确定义任何转换器。您的项目是否有com.vladmin:hibernate-types-52
依赖关系?是的,这有什么帮助吗?我没有检查,只是检查了一下,工件id是hibernate-types-43(不是52)。