序列化对象防止互相引用
借用JsonSerializer对对象进行序列号处理
public class BaseEntityJsonSerializer extends JsonSerializer<BaseEntity> {
@Override
public void serialize(BaseEntity value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
gen.writeStartObject();
if(null==value.getId()) {
gen.writeNullField("id");
} else {
gen.writeNumberField("id", value.getId());
}
gen.writeEndObject();
}
}
@Data
@Entity
@Table(name = "STUB_PARAM")
public class ClientStubParam extends BaseEntity {
@JsonSerialize(using = BaseEntityJsonSerializer.class)
@ManyToOne
@JoinColumn(name = "stub_id")
private ClientStub stub;
@Column(name = "p_code", length = 64, nullable = false)
private String code;
@Column(name = "p_name", length = 100, nullable = false)
private String name;
}