spring validate group分类校验

来源:互联网 发布:seed相似的软件 编辑:程序博客网 时间:2024/05/16 03:26

     在使用spring validate,我的用法是在bean上标注校验,如下:

     wishclip.java:

     @NotNull
@Size(max = 512)
private String url;

     然后在spring controller中这样使用:

      public ResponseEntity<?> addWish(@Valid @RequestBody WishclipDto wish) 

      

      但是这样有个问题,我的需求是wishclilp中的url只是在create的时候需要传入校验,在update的时候不需要传入,这样的用法会在create和update的时候都校验url。

      经过google, spring3.1支持group级别校验:http://blog.codeleak.pl/2014/08/validation-groups-in-spring-mvc.html  和  https://narmo7.wordpress.com/2014/04/26/how-to-set-up-validation-group-in-springmvc/   。

       改动如下:

       在wishclip中定义两个空接口,然后在url的注解上使用这两个interface

       /** validate only when create **/
public interface CreateWish{};
/** validate only when update **/
public interface UpdateWish{};

       然后在controller中这样用:

       public ResponseEntity<?> addWish(@Validated({CreateWish.class}) @RequestBody WishclipDto wish) 

       public ResponseEntity<Void> update(@Validated({UpdateWish.class}) @RequestBody WishclipDto wish) 


0 0
原创粉丝点击