2023年12月13日

微信小程序订阅消息推送

摘要: 一、后台配置模板消息: 首先打开微信后台https://mp.weixin.qq.com/,找到订阅消息那里进行模板配置: 点击选用按钮,选择指定的模板,选择字段,确定后可以看到下面的信息: 复制上面的模板ID,这个在模板消息推送时要用的。点击详情,可以看到下面的信息: 这里面的模板ID和详细内容是 阅读全文

posted @ 2023-12-13 14:49 小夏coding 阅读(1777) 评论(0) 推荐(0) 编辑

微信小程序登录

摘要: 一、登录流程: 上面这个是微信官方给出的。在通过 wx.login() 获取到用户登录态之后,需要维护登录态。开发者要注意不应该直接把 session_key、openid 等字段作为用户的标识或者 session 的标识,而应该自己派发一个 session 登录状态。详见下面的流程图: 1.前端调 阅读全文

posted @ 2023-12-13 10:31 小夏coding 阅读(254) 评论(0) 推荐(0) 编辑

2023年11月18日

Visual Studio编译调试MySQL源码

摘要: 最近想阅读下MySQL源码,虽然在linux下编译MySQL源码还是很顺利的,但是奈何不习惯在linux下阅读代码,比较喜欢用宇宙第一IDE Visual Studio来阅读调试代码,下面就记录下在windows上用visual studio来编译MySQL 5.7.44的源码。 下载mysql源码 阅读全文

posted @ 2023-11-18 10:09 小夏coding 阅读(542) 评论(2) 推荐(0) 编辑

分布式锁的错误用法

摘要: 今天测试反应在商品入库存的时候会出现一个偶现的问题,多次入库后,突然发现商品的库存量是乱的,但是专门针对这个功能去测试的时候,却发现功能又是正常的,无法稳定复现问题,测试希望开发审查下代码看下是哪里的原因。 于是开发我们立马定位到商品入库存的那段代码,大致代码如下: 1 @Transactional 阅读全文

posted @ 2023-11-18 00:24 小夏coding 阅读(18) 评论(0) 推荐(0) 编辑

2023年11月6日

P2P实战

摘要: 一、为什么我们的电脑不能直接上外网 现在大多数设备的网络采用的是ipv4网络,ipv4中ip的定义为x.x.x.x,其中每一位为0-255,所以全球的ip总数256^4=4294967296(42亿多个IP地址),这个数量是不足够全球使用的,为了让每个人都有IP可用,计算机网络模型采取了一个单位(若 阅读全文

posted @ 2023-11-06 23:55 小夏coding 阅读(319) 评论(0) 推荐(0) 编辑

2023年9月13日

java小技巧(一)--计算表达式的值

摘要: 平时工作中经常要用到表达式值的计算问题,Spring框架中提供了Spring Expression Language(简称 SpEL)机制,可以很方便快捷的实现表达式值的计算; SpEL机制需要引入Spring-expression包。下面列举其应用的两个小Demo; 1、数值计算: String 阅读全文

posted @ 2023-09-13 15:19 小夏coding 阅读(212) 评论(0) 推荐(0) 编辑

统一记录日志

摘要: 最近业务有需求要对所有的用户操作进行日志记录,方便管理员查询不同权限级别的用户对系统的操作记录,现有的日志只是记录了异常信息、业务出错、重要功能的执行进行了记录,并不能满足需求要求,最直接的解决方法是在每个接口上去添加log.info之类的代码,但是这种方式对业务代码的切入性太强,记录日志的代码和业 阅读全文

posted @ 2023-09-13 14:35 小夏coding 阅读(251) 评论(0) 推荐(0) 编辑

2023年8月25日

FastDFS体验

摘要: 由于笔者在一个项目种要用到文件上传,刚好看到网上有一篇介绍FastDFS的文件,于是就入坑用FastDFS做文件服务器尝试了一次,顺便记录下这次入坑的过程和感受。 笔者为了方便,没有下载原始的FastDFS文件包安装,而是采用的delron/fastdfs的打包好的docker安装的,而且是单机安装 阅读全文

posted @ 2023-08-25 17:32 小夏coding 阅读(427) 评论(0) 推荐(1) 编辑

2023年4月14日

java小技巧(二)--TypeResolver用法

摘要: 1、List 1 TypeResolver typeResolver = new TypeResolver(); 2 // listType => List<Object> 3 ResolvedType listType = typeResolver.resolve(List.class); 2、M 阅读全文

posted @ 2023-04-14 17:35 小夏coding 阅读(202) 评论(0) 推荐(0) 编辑

2023年4月11日

java小技巧(三)--Optional

摘要: 1.Optional.of()或者Optional.ofNullable()创建Optional对象,差别在于of不允许参数是null,而ofNullable则无限制。 1 // 参数不能是null 2 Optional<Integer> optional1 = Optional.of(1); 3 阅读全文

posted @ 2023-04-11 14:38 小夏coding 阅读(240) 评论(0) 推荐(0) 编辑

导航