- 博客(17)
- 收藏
- 关注
原创 java实现接口爬虫
例如csdn的网页:https://silkroad.csdn.net/api/v2/assemble/list/channel/search_hot_word?第三步:模仿参数写代码 ,这样就能爬取到需要参数的值是什么,例如这里是爬取的总条数.
2023-08-22 15:40:23 847 1
原创 处理雪花算法等造成的精度丢失问题
/ 处理JS精度丢失=====================================================// 处理JS精度丢失=====================================================前端js精度丢失因为number处理的是16位,雪花算法是19位,在前后端交互的时候就会造成精度损失。// 扫描实现 IEnum 接口的枚举类,添加到Jackson 序列化、反序列化规则中。方法二:全局配置处理JS精度丢失,两句。
2023-08-15 17:45:52 322 1
原创 小程序实现微信退款
说明:退款受理时间,遵循rfc3339标准格式,格式为YYYY-MM-DDTHH:mm:ss+TIMEZONE,YYYY-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC。* 应结退款金额 说明:去掉非充值代金券退款金额后的退款金额,单位为分,退款金额=申请退款金额-非充值代金券退款金额,退款金额<=申请退款金额。相信大家业务上都会用到微信退款,例如一些商品支付了,用户体验不好需要退款。
2023-08-15 15:55:09 1138 1
原创 websocket实现客户端网络长连接检测
log.error("用户错误:"+this.userId+",原因:"+error.getMessage());// 一对一发送消息(测试)log.info("用户连接:"+userId+",当前在线人数为:" + getOnlineCount());log.info("用户退出:"+userId+",当前在线人数为:" + getOnlineCount());log.error("用户:"+userId+",网络异常!log.info("发送消息到:"+userId+",报文:"+message);
2023-06-29 16:55:14 715
原创 Quartz配合cron表达式完成定时任务
/这里是指每分钟执行一次 withIntervalInMinutes(1).repeatForever()) 定时几点钟。通过这个生成器,您可以在线生成任务调度比如Quartz的Cron表达式,对Quartz Cron 表达式的可视化双向解析和生成.4.例如我们项目中的业务是会员生日给会员发送生日祝福消息,我们可以用定时任务每天去查当天过生日的会员集合,然后去发送消息。5.cron表达式可以使我们的定时更加灵活推荐去看在线Cron表达式生成器。//这里cron表达式是说周一10.27分。
2023-06-19 13:43:24 558
原创 用Redis的Zset数据结构做接口限流
在公司业务项目中遇到了一个高并发接口,因为那个接口对数据库有很高的写和读的需求,再加之公司服务器会跑很多项目,稍不注意就会使服务器宕机,所以想出了接口限流的方法,是项目正常流转. 下面就是redis用set做的一个一分钟限制5次的限流处理.System.out.println("静止访问");return "不好意思,请过十秒钟再来~~~~~~~";System.out.println("访问成功");System.err.println("静止访问");return "可以访问";
2023-06-16 15:50:07 372 1
原创 微信支付需要注意的问题难点
2.在订单详情页之前,前端生成uuid,然后后端存入token中,进入详情页之后后端拿着传入token去redis中比对,如果是比对成功那么就能防止订单重复,用完之后需要删除redis中的token。因为我们上一个项目是需要做一个书籍的买卖支付的系统,我们调用了微信支付和支付宝支付两个接口,下面我来讲一下用java做支付时需要注意的问题和考虑的难点。特别需要注意的是同一笔订单我们要设置退款时间间隔为两分钟,防止并发请求导致退款失败,一.首先从订单开始 防止订单重复提交问题。二.如何防止重复支付,支付调单。
2023-06-12 22:37:15 406 1
原创 关于小项目权限功能的设计和权限表的维护
说到权限的时候首先要了解RBAC,用户 角色 权限之前的关系,方便系统维护 大数据量的用户。2.切权限注解@Aspect注解去切注解 如果不知道Aspect的含义建议去百度一下。因为角色和权限是一对多的关系,所以permission字段是String类型就可以了。根据实际业务去选择注解切割 这里我用的是around环绕通知去切,利用。设计表 因为是小项目用到四张就可以了 用户表 权限表 和角色表就行了。* @param role 角色id,0表示超级管理员。* @param nick 昵称(可模糊)
2023-06-09 15:42:54 105
原创 阿里云调用三方工具发送短信
/ 接收短信的手机号。request.putQueryParameter("SignName", "四川创琦科技");throw new BusinessExeption("1036","账号未绑定,请去绑定");// SmsUtils.sendSms(phone,"您的验证码为:"+code);new BusinessExeption("1037","手机号不能为空");
2023-06-09 14:42:46 122
原创 腾讯云对象存储实现文件上传下载
/ 2 设置 bucket 的地域, COS 地域的简称请参照 https://cloud.tencent.com/document/product/436/6224。// 2 设置 bucket 的地域, COS 地域的简称请参照 https://cloud.tencent.com/document/product/436/6224。// SECRETID和SECRETKEY请登录访问管理控制台 https://console.cloud.tencent.com/cam/capi 进行查看和管理。
2023-06-09 14:38:59 662
原创 微信小程序模板消息发送功能实现
data.put("remark", new WxMsg(kid_name + "发起了图书:" + book_name + "的预约审核", null));data.put("keyword3", new WxMsg("发起了"+book_name+"预约借书", null));data.put("first", new WxMsg("请审核学生的预约借书", null));//data.put("time", new WxMsg("尽快", null));"+(i+1)+"个");
2023-06-09 14:33:25 1919
原创 java人脸识别功能实现
/用输出流往buffer写里入数据,中间参数代表从哪个位置开始读,len代表读取的长度。throw new BusinessExeption("106", "人脸注册失败");throw new BusinessExeption("107","照片为空");throw new BusinessExeption("106","未检测到人脸");//每次读取的字符串长度,如果为-1,代表全部读取完毕。//创建一个Buffer字符串。
2023-06-09 11:12:38 1445
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人