标签:bsp 接口 数据清理 cloud 封装 处理 batch 删掉 ali
校验:非空、唯一性等校验
密码的加密:密码加密来存储。
如何做https的访问
一个层面是接口层面,另外一个层面是数据库层面。
Springboot给我们提供了简单的封装
校验的包里面还有其他的注解。
然后在参数之前加上注解。@Validated 表示传进来的这个UserInfo需要去做校验
运行程序查看效果
详细的错误信息
用户名和密码都去掉
返回的errors就是一个数组
数据库的实体类也要加上非空的注解。
因为传进来的数据 经过Service层的业务逻辑,可以能会做一些修改后再保存到数据库内,所以数据库也要做校验。
例如下面 接收的参数属性拷贝到user对象后, 如果又设置了userName为null,那么保存插入的数据就会有问题。
再次测试,用户名和密码都填好后。
返回的500,。是服务器内部处理的错误
用户名不能重复的问题、@Column注解里面。unique注解
数据库内把表的username删除掉。
JPA会自动同步你的对象和数据库的表,但是他会去做判断,如果你的数据库内已经有了一个同名的字段username,他就不会再去改变数据库已有的字段。我们把username删掉了 他会重新去创建这个字段,并按照实体类的规则去创建。
启动服务。日志内去创建了username这个字段。
保证用户名的唯一性。
把数据库库内的数据清理一下 ,剩下一条用户数据
把设置为空的这行代码删掉,。
这个就是数据库的常见的校验
@NotBlank和nullable设置为true这两个的区别。
@NotBlank这是应用级,框架层面的校验,不管你数据库底层数据库字段是空的还是非空的,在应用层面他都回去做校验。sql执行之前去做校验。
@Column的nullable是在建数据库的时候,把这列设置为非空了。就是数据库内这个字段不能为空
如果去掉了nullable那么数据库内是可为空的。只不过NotBlank会在框架层面去校验非空
Spring cloud微服务安全实战-3-6API安全机制之数据校验_batch
标签:bsp 接口 数据清理 cloud 封装 处理 batch 删掉 ali
原文地址:https://www.cnblogs.com/wangjunwei/p/11904309.html