springboot实现Validator校验
一个优秀的后端,是不会相信任何传入的参数的 要做到这一点,以前我们是写大量的判断代码来验证数据的格式 在开发中,我们实际不这么干,我们使用Hibernate Validator来进行参数校验 它实现了JSR 303规范,使我们的代码的健壮性大大提高 先列出一些常用注解 约束注解 详细信息 @Null 被注释的元素必须为 null @NotNull 被注释的元素必须不为 null @AssertTrue 被注释的元素必须为 true @AssertFalse 被注释的元素必须为 false @Min(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值 @Max(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值 @DecimalMin(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值 @DecimalMax(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值 @Size(max, min) 被注释的元素的大小必须在指定的范围内 @Digits (in...
mysql join
首先先放张图 今天聊聊mysql表join连接,其本质是拿主表每条数据取出来和子表每行数据进行循环比较,如果满足则返回,不满足返回null 首先是内连接 两者之间取交集,两边都满足返回,不满足不返回 语法很简单 1234567SELECT * FROM tb_goods a INNER JOIN tb_goods_desc b WHERE a.id = b.goods_id 其中,INNER可以省略掉只写个JOIN 然后是左外连接 左外连接,此时可以理解为理解 左表为主表,右表为子表。在条件不满足时,左表数据存在,右表数据为null 简单来说就是结果集包含左表所有行,右表不匹配则为null 12345SELECT * FROM sp_user a LEFT OUTER JOIN tb_seller b ON a.seller_id = b.seller_id 其中,OUTER可省略 反向操作一波就是右外连接 1234567SELECT * FROM tb_seller a RIGHT OUTER JOIN sp_user b ON a.seller_id = b.sell...
fastjson基本使用
alibaba的fastjson真香啊 首先是依赖 123456<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --><dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.73</version></dependency> 这里列举点简单的应用 首先是对象转JSON 1234567Map<String, Object> map = new HashMap<>(1 << 3);map.put("data", "操作成功!");map.put("code", 200);map.put("success", true);map.put("...
url怎么传数组
前两天遇到一个奇葩问题,url怎么传数组参数到后端,后端怎么接收 先申明,一般项目中绝不会这么传。。。 其实很简单,前端转换成JSON进行一次Base64加密,后端进行一次Base64解密再从json转换成对象就可以 前端base64加密解密方法: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114//1.加密 var str = '内容'; var base = new Base64(); var result = base.encode(str); document.write(resu...
程序员,你还在用postman吗
每次写完一个接口,都需要日常的打开postman测试接口,测试完后,又要把结果复制到接口文档里,给上备注等等 最近公司开发在用这个好东西:runapi 它可以测试完直接生成接口文档,免去从postman复制一大堆参数的烦恼 runapi用完真香,谁用谁知道,那么在哪能免费下载到runapi呢?我已经帮你们把链接放在下面啦!附带说一句,这玩意生成的接口文档链接可以部署在自己的局域网本地哦~这样就不会被别人看到啦!是不是很香? 官网链接
java巨大字符串截取
string转list,分段截取 比如传入rubenrubenruben和5,得到的list就是{"ruben","ruben","ruben"}这样的 1234567891011121314151617181920/** * @param initial 初始字符串 * @param interval 分段长度 * @return */ public static List<String> stringSplit(String initial, Integer interval) { List<String> result = new LinkedList<>(); StringBuilder tmp = new StringBuilder(initial); int length = tmp.length(); while (length > 0) { ...
云鉴黄,你懂
鉴黄是我的事业,我会一直做到死为止!——唐马儒 大家都知道,我们的网站内容安全是很重要的 比如今天张三发布一个李四的照片,然后贴上==一夜八百量大从优== 如果我们的内容未经审核就发布到网站上,那么网站的安全就得不到保障,这对祖国未来的花朵影响是很大的 但如果我们每一条都人工审核的话,会占用大量人力资源,造就更多的就业岗位 造成更多的人力成本 为了解决这个问题,阿里云带着我们的产品来啦!它就是《阿里云内容安全》,简称IAcs 那么如何使用呢?首先,打开符文页,阿不,打开阿里云官网。。。 访问阿里云官网,注册阿里云账号。如果已有阿里云账号,请跳过此步骤。 访问内容安全产品试用页面,单击立即开通,正式开通服务。 访问AccessKey管理页面,管理您的AccessKey ID和AccessKey Secret。 复制依赖 123456789101112131415161718192021222324252627282930<dependency> <groupId>com.aliyun</grou...
迁移spring项目到springboot
嗨呀!今天是周六没上班,来把我们的spring+springmvc项目迁移到springboot吧! 首先创建springboot项目 然后一直下一步,复制我的pom 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/...
spring实现简单AOP
Sometimes we may think about how to do something before the method runs 有时我们会想,如何在一些方法执行前或者执行后做一些操作 比如日志的记录、权限的鉴定等等 昨天,我们搭建了个简单的spring项目并写了几个接口 其中一个是这样的 这里返回给前端的map中的data,我是手动加的前缀“服务器对你说” 我们现在来用AOP实现 先修改我们接口中的代码,去掉前缀 然后配置AOP 12345678910111213141516171819202122232425262728293031323334353637<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quo...
搭建spring+springmvc项目
新建一个Maven项目 填写项目名 引入依赖 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns...
