Spring Data REST - 如何通过JSON忽略字段对实体进行排序?

时间:2018-02-18 16:37:24

标签: java spring spring-boot spring-data-rest

我正在使用Spring Data REST,我的项目中有以下实体。

@Data
@Entity
public class Loan{

    @Id
    @GeneratedValue
    private Long id;

    @JsonIgnore
    private Long createdDate;

    private Long amount;

    private Long repaymentStartDate;

}

现在我想按createdDate对贷款进行排序,这些贷款将自动填写,并且JSONIgnored会阻止其更新。但是当我调用端点createdDate时,我无法按loans?sort=createdDate对贷款进行排序。

我该如何解决这个问题?

这是我的存储库:

public interface LoanRepository extends PagingAndSortingRepository<Loan, Long>{

}

1 个答案:

答案 0 :(得分:3)

要解决此问题,请尝试将@JsonIgnore替换为@JsonProperty(access = READ_ONLY)。它会阻止createdDate更改但仍保留在json正文中。

<强>已更新

对于Spring Boot 1.5.10+而不是@JsonProperty(access = READ_ONLY),您可以在实体顶部使用@JsonIgnoreProperties("createdDate")