@Valid和@Validated的编程式调用,手动触发参数校验

简介隔离在家工作,最近遇到一个挺好玩的需求哈哈哈。在参数校验前需要做一段逻辑上的处理。比如:同一个接口的参数校验,一个实体类有10个属性满足条件A就校验其中的5个属性,满足条件B就校验另外5个属性。常用的处理逻辑一般我们在做Spring Boot项目时候的参数校验都是直接通过在接口入口处增加@Valid,然后Spring在序列化参数的时候就回自动帮我们进行校验。实体类增加校验注解这里举例:@Not

- 阅读全文 -

Spring Boot配置文件敏感信息加密的开源方案实现

简介最近隔离在家,做项目中发现项目中的配置文件敏感信息都是明文存储的的,很不安全。例如:数据库的密码,redis的密码,oss存储的相关key等等。然后自己也上网百度了下相关的资料。找到了一个开源的配置文件加密实现:jasypt。jasypt开源地址:asypt-spring-boot 官网:http://www.jasypt.org jasypt的使用引入依赖gradle:compile gro

- 阅读全文 -

Spring Boot配合Postgresql实现外卖平台常见的距离你xxx米功能

简介最近在做一个业务功能,需求涉及到了通过终端的定位获取距离终端最近的实体店铺的需求。因为之前没有涉及到地理位置坐标计算距离的知识,只知道redis可以计算两个坐标点(经纬度)之间的距离。但是不满足目前的需求,因为除了计算距离外还要进行筛选、排序、分页。所以就不考虑在redis实现。更不可能全表查询内存排序。所以上网搜索资料,找到了pgsql的插件postgis,是数据库层面支持经纬度距离计算的插

- 阅读全文 -

GoLang编译程序在不同环境执行~Windows,Mac,Linux

更改golang的环境参数设置编译完后的程序可以在Mac执行:go env -w CGO_ENABLED=0 GOOS=darwin GOARCH=amd64go build hello.go设置编译完后的程序可以在Linux执行:go env -w CGO_ENABLED=0 GOOS=linux GOARCH=amd64go build hello.go设置编译完后的程序可以在Windows执

- 阅读全文 -