今天修改bug时碰到需求的问题,因为业务马上要上线,于是将接口拆分成两个了.
业务场景,新建的编辑页有保存和上架按钮,保存时除了名称外,其他内容都不做判断,直接保存,上架时需要对所有字段进行校验
原来的实现场景是共用一份VO,传参时不使用@Valid注解,根据上架的情况时在代码中一一对VO字段做判断,为了方便,拆分成保存接口和上架接口,这样在上架方法中可以使用@Valid
参考了以下:https://www.ibm.com/developerworks/cn/java/j-lo-jsr303/index.html JSR 303 - Bean Validation 介绍及最佳实践
重点:
controller代码(kotlin)
@PostMapping("/stores/{storeId}/gifts-up-")
fun add2(@PathVariable("storeId") storeId: Long,
@RequestBody giftVO: GiftSaveVO,
@AuthenticationPrincipal account: Account):