为了账号安全,请及时绑定邮箱和手机立即绑定

java @Vaild 可以用在对象上面作注解校验吗

java @Vaild 可以用在对象上面作注解校验吗

噜噜哒 2019-01-18 11:59:46
public String save(@RequestBody @Valid Stad stad) 只有对象的时候是没问题的,现在保存对象的时候还有一个文件同时要上传上来,因为对象封装json在data里面,我想再把json转成对象再校验可以吗 public String save( @RequestParam("data")String data, @RequestParam("file")MultipartFile file ) throws IOException { @Valid Stad stad = JSON.parseObject(data, Stad.class); …… } 或者 public String save( @RequestParam("data") @RequestBody @Valid Stad stad, @RequestParam("file")MultipartFile file ) 前台 <form id="stad" action="/save" method="post" enctype="multipart/form-data"> <p><input type="file" name="file"/></p> <p><input type="text" name="name" placeholder="name"></p> <p><input type="text" name="addr" placeholder="addr"></p> <p><input type="text" name="router" placeholder="router"></p> <p><input type="text" name="url" placeholder="url"></p> <p><button type="submit">提交</button></p> </form> 非常感谢 @驰星周 提供的方法 最后解决方法多添加了一个对属性的注解验证,只验证实体的时候没有验证,而加上对其中一个属性的验证,实体验证就会起作用了,可能是我哪里写的不对,暂时曲线救国 public String save( @RequestParam("file")MultipartFile file, @Valid Stad stad, @Valid @NotNull String name )
查看完整描述

1 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

直接

public String save(
            @RequestParam("file")MultipartFile file,@Valid Stad stad,BindingResult result
    )

就可以校验了,表单提交或者ajax上传都可以,不用json转换。

查看完整回答
反对 回复 2019-02-12
  • 1 回答
  • 0 关注
  • 652 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信