Mars-Java 3.0.26 更新如下:
在实际开发中,很多VO对象会被作为多个接口的接参对象,这种情况下如果在属性上加@MarsDataCheck注解,会导致所有用到这个对象的接口,都需要遵循这个校验规则。
但是实际中会出现这种情况:A接口需要这个字段非空,但是B接口又不需要非空。
这个时候,就需要作用域了。举个例子:
public class ExpVO { private String name; private String address; }
@MarsApi(refBean = "expApiService") public interface ExpApi { // 这个接口name不可以为空,address可以为空 List<ExpVO> expGetRequest(ExpVO expVO); // 这个接口name和address都不可以为空 @RequestMethod(ReqMethod.POST) List<ExpVO> expPostRequest(ExpVO expVO); // 这个接口address不可以为空,name可以为空 @RequestMethod(ReqMethod.POST) List<ExpVO> saveRequest(ExpVO expVO); }
在@MarsDataCheck注解里设置api属性
public class ExpVO { /* * expGetRequest 和 expPostRequest两个接口都不允许name为空 * 只需要在apis属性里配置这两个接口即可,但是由于他们都是exp开头的 * 所以用通配符即可 */ @MarsDataCheck(notNull = true, msg = "名称不可以为空", apis={"exp*"}) private String name; /* * saveRequest 和 expPostRequest两个接口都不允许address为空 * 只需要在apis属性里配置这两个接口即可 */ @MarsDataCheck(notNull = true, msg = "地址不可以为空", apis={"expPostRequest","saveRequest"}) private String address; }
注:
项目官网:http://www.mars-framework.com/
个人微博:@个人开发者-俞晔
评论删除后,数据将无法恢复
来了,来了,Mars-Java 的属性校验注解,支持作用域设置了
Mars-Java 3.0.26 更新如下:
作用域设置
在实际开发中,很多VO对象会被作为多个接口的接参对象,这种情况下如果在属性上加@MarsDataCheck注解,会导致所有用到这个对象的接口,都需要遵循这个校验规则。
但是实际中会出现这种情况:A接口需要这个字段非空,但是B接口又不需要非空。
这个时候,就需要作用域了。举个例子:
有一个VO对象
有三个接口用它作为接参对象【注意看注释】
我们可以用如下方式来设置ExpVo的属性校验【注意看注释】
在@MarsDataCheck注解里设置api属性
注:
项目官网:http://www.mars-framework.com/
个人微博:@个人开发者-俞晔