boş değerler seri/çalışmıyor, ama yine de ben kullanıyorum serializeboş değerleri@JsonInclude (Include.NON_NULL) jackson sınıf/pojo üzerinde ek açıklama yerleştirilir ve aynı zamanda mapper yapılandırmış
Hazırda Bekleme 4.3.7Final ve Jackson 2.4.4. Kaldırılan alıcı ve ayarlayıcılar
@JsonInclude(Include.NON_NULL)
@Entity
@Table
public class School {
@Id
@GeneratedValue
private int id;
@OneToMany(cascade=CascadeType.ALL,fetch= FetchType.LAZY)
private List<Student> students;
@OneToMany(cascade=CascadeType.ALL,fetch= FetchType.LAZY)
private List<Employee> staff;
}
JSONMapper:
@Component
public class JSONMapper extends ObjectMapper {
/**
*
*/
private static final long serialVersionUID = -3131980955975958812L;
//ref http://blog.pastelstudios.com/2012/03/12/spring-3-1-hibernate-4-jackson-module-hibernate/
public JSONMapper() {
Hibernate4Module hm = new Hibernate4Module();
registerModule(hm);
configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
configure(SerializationFeature.INDENT_OUTPUT , false);
configure(MapperFeature.DEFAULT_VIEW_INCLUSION, false);
setSerializationInclusion(Include.NON_NULL);
}
}
Çıktı:
{"id":1,"students":null,"staff":null}
Bir liste var ve boş olduğunu gösterdiğinden boş eklemek istiyorum. Ama null, yüklü olmadığı anlamına gelir. Temelde hazırda tembel nesneyle mücadele ediyor. Vekil göstermek istemiyorum. –
Her zaman boş değerler yerine boş değerler kullanmalısınız. Bunun nedeni, hazırda beklemede olan bir çocuğun olmadığı durumlarda bile Hazırda Bekletme'nin her zaman proxy kullanmasıdır. Bu, ilk kez Ana nesneyi oluşturduğunuzda boş değeriniz olduğu tek zamandır. –