エンティティクラスは、単にフィールドの前端部に戻って、あり

エンティティクラスは、単にフィールドの前端部に戻って、あり

この方法の一つ

プラスエンティティクラスの注釈には@JsonIgnoreProperties({"value1","value2"})(ジャクソンのコメント)

例のエンティティクラス

@JsonIgnoreProperties({"value5","value6"})
public class TestJacksonAnnotationBean {
    private String value1;
    
    private String value2;
    
    private String value3;
    
    private String value4;
    
    private String value5;
    
    private String value6;
    
    // get、set方法
}

これは、このデータ・フォーマットを返します。

{
    "value1":"a",
    "value2":"b",
    "value3":"c",
    "value4":"d"
}

この方法の一つ

自動的にマッピングオブジェクトのプロパティを完了するために、私たちを助けるために、オブジェクトの属性マッピングフレームワークを使用して、一般的なdozerSpringネイティブBeanUtils

  1. 使用dozer

ソース・データエンティティクラス

public class TestJacksonAnnotationBean {
    private String value1;
    
    private String value2;
    
    private String value3;
    
    private String value4;
    
    private String value5;
    
    private String value6;
    
    // get、set方法
}

新しいエンティティクラスを作成TestJacksonAnnotationBeanRes、たとえば、あなたが返すようにしたいフィールドを格納するために使用します

public class TestJacksonAnnotationBeanRes {
    private String value1;
    
    private String value2;
    
    private String value3;
    
    private String value4;
    
    // get、set方法
}

次に使うdozer私たちの完全なエンティティクラスのプロパティが自動的にマッピングを支援します

TestJacksonAnnotationBeanRes target = mapper.map(sourceBean, TestJacksonAnnotationBeanRes.class);
  1. 使用すると、Spring内蔵のBeanUtils
BeanUtils.copyProperties(sourceBean, targetBean);

注意:

  1. 同じ名前を持つ実際のクラスフィールドのニーズ

  2. 同様に効果的なコレクションのリスト

おすすめ

転載: www.cnblogs.com/lmw97/p/12061806.html