1
在REST-WebServices中,我使用DTO类来请求和响应。我的请求Dto和响应Dto基本上是相同的 - 结构明智的,但在请求期间,我只提供某些字段的值(caseId和userId在这里),但作为响应禁止editedBy和modifiedDate,我得到Dto的所有其他字段的值。分别请求DTO和响应DTO json请求主体和响应主体
public class ProcedureRequestDTO{
private ProcedureDTO procedure;
// getters & setters
}
public class ProcedureResponseDTO{
private ProcedureDTO procedure;
// getters & setters
}
public class ProcedureDTO{
private Integer procedureId;
private Integer procedureName;
private Integer caseId;
private Integer userId;
private Integer ownerId;
private Integer editedBy;
@JsonInclude(value=Include.ALWAYS)
@JsonDeserialize(using=ZonedDateTimeJsonDeserializer.class)
@JsonSerialize(using=ZonedDateTimeJsonSerializer.class)
@JsonFormat(shape=Shape.NUMBER)
private ZonedDateTime createdDate;
@JsonInclude(value=Include.ALWAYS)
@JsonDeserialize(using=ZonedDateTimeJsonDeserializer.class)
@JsonSerialize(using=ZonedDateTimeJsonSerializer.class)
@JsonFormat(shape=Shape.NUMBER)
private ZonedDateTime modifiedDate;
// getters & setters
}
所以我应该在我的请求json中包含所有字段或只包含那些有值的字段。这里是我的请求和响应jsons:
请求JSON: -
{
"procedure":{
"caseId": 1,
"userId": 1
}
}
响应JSON: -
{
"procedure":{
"procedureId": 1,
"procedureName": "proc1",
"caseId": 1,
"userId": 1,
"ownerId": 1,
"editedBy": null,
"createdDate": 1461059413000,
"modifiedDate": null
}
}
应我的请求和响应jsons是这样本身或者我应该将整个dto在我的请求json?如果我的Dto课程还有其他错误,请提及他们。