如何做好嵌套数据的验证呢?
数据格式
{ "code":"唯一验证",
"category":"DB存在,且状态为启用",
"items":[
{"code":"唯一验证"},
{"code":"唯一验证"}
]
}
需求点
- 基础验证:必填、长度等验证、正则等
- 通过基础验证后,再验证DB类查询的项,比如唯一性
- 减少查询次数,比如示例中
code
字段都是从一个表中查询
基本验证,一般是通过注解来完成,那么涉及到DB查询的,也是通过自定义注解,还是在service
层验证呢?或是有其他的什么手段,使其简洁明了。
回答:
基础验证我一般放在 controller
层,对于不同接口,验证要求可能不一样,比如用户名验证,如果给后台接口,我可能不限制长度,如果对于前台接口,我可能限制长度至少3位。
如果是数据库之类的验证,比如唯一性,那是越靠后越好,我以前开发是三层(dao
, service
, controller
),就放在现在dao
层,现在用 mybatis
就两层(service
, controller
),那就放在 service
层了。
对于第三点我没理解什么意思,是不是一个表里面多个字段验证唯一性,用或(OR
)那也是一条查询语句够了呀。
以上是 如何做好嵌套数据的验证呢? 的全部内容, 来源链接: utcz.com/p/945430.html