【开源中国 APP 全新上线】“动弹” 回归、集成大模型对话、畅读技术报告”
我的目的是想实现对接收model中含有list集或者别的vo对象时,也能够校验其内部的字段。
但是目前执行时,只能对继承的主vo进行校验,无法对其list中的每个对象校验,也不能对dto中加入的单个vo对象内部字段校验,有没有什么好的方法能办到都一起校验了呢?
需求上是对主订单,多个广告,档期都需要对参数进行校验的,mvc校验实现不了,代码上也必须走。代码下方。。
望各位大神指点!!
//dto:接口接受数据model
public class OrdersAddModel extends Orders{
@NotEmpty(message = "请选择广告位!")
List<OrderADSpace> orderADSpaces;
OrderShowDateModel orderShowDate;//订单总的一个档期,只有一个
List<Integer> ids;
}
//vo:主订单
public class Orders extends BaseModel implements Serializable {
//订单基本属性校验。。
@NotNull(message = "s!")
@Column(name = "OrderInCompanyId")
private Integer orderInCompanyId;
@NotNull(message = "s!")
@Column(name = "OrderInCompanyType")
private Integer orderInCompanyType;
}
//广告list中广告位vo
public class OrderADSpace extends BaseModel implements Serializable {
//广告位校验,广告位一些属性必填。。
@NotNull(message = "s!")
@Column(name = "OrderId")
private Integer orderId;
@NotNull(message = "s!")
@Column(name = "MediaId")
private Integer mediaId;
}
//订单档期vo
public class OrderShowDate extends BaseModel implements Serializable {
//档期校验:开始和结束时间必填..
@Column(name = "OrderId")
@NotNull(message = "s!")
private Integer orderId;
@Column(name = "StartDate")
@NotNull(message ="s..")
private Date startDate;
@Column(name = "EndDate")
@NotNull(message ="s..")
private Date endDate;
}
controller:
public String addOrder(@Valid @RequestBody OrderUpdateModel model,
BindingResult errorsResult){
//数据校验
if(errorsResult.hasErrors()) {
return returnFieldErrors(errorsResult);
}
}
https://my.oschina.net/diamondfsd/blog/840504
来,看这个。