内容简介:Mars-Java 3.0.26 更新如下: 参数校验注解@MarsDataCheck,支持作用域设置 JSON传参做了优化 对代码进行了大量优化,使其更稳定可靠 作用域设置 在实际开发中,很多VO对象会被作为多个接口的接参对象,这种情况下...
Mars-Java 3.0.26 更新如下:
- 参数校验注解@MarsDataCheck,支持作用域设置
- JSON传参做了优化
- 对代码进行了大量优化,使其更稳定可靠
作用域设置
在实际开发中,很多VO对象会被作为多个接口的接参对象,这种情况下如果在属性上加@MarsDataCheck注解,会导致所有用到这个对象的接口,都需要遵循这个校验规则。
但是实际中会出现这种情况:A接口需要这个字段非空,但是B接口又不需要非空。
这个时候,就需要作用域了。举个例子:
有一个VO对象
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);
}
我们可以用如下方式来设置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;
}
注:
- 如上面示例所示,api属性支持配置多个接口名,同时也支持通配符
- apis属性如果不配置,则表示任意使用该VO的接口,都遵循这个校验规则
项目官网:http://www.mars-framework.com/
个人微博:@个人开发者-俞晔
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Python标准库
Doug Hellmann / 刘炽 / 机械工业出版社华章公司 / 2012-6-15 / 139.00元
本书由资深Python专家亲自执笔,Python语言的核心开发人员作序推荐,权威性毋庸置疑。 对于程序员而言,标准库与语言本身同样重要,它好比一个百宝箱,能为各种常见的任务提供完美的解决方案,所以本书是所有Python程序员都必备的工具书!本书以案例驱动的方式讲解了标准库中一百多个模块的使用方法(如何工作)和工作原理(为什么要这样工作),比标准库的官方文档更容易理解(一个简单的示例比一份手册......一起来看看 《Python标准库》 这本书的介绍吧!