- 博客(28)
- 收藏
- 关注
原创 JAVA生成订单号(日期+流水号)支持高并发
在分布式系统中生成订单号需考虑高并发、唯一性和有序性。Snowflake算法是Twitter开源的分布式ID生成方案,适合订单号场景。各方案可根据实际业务场景组合使用,如分布式系统推荐Snowflake+日期前缀,单系统可用Redis+本地缓存组合。利用Redis的原子性操作实现高并发流水号生成,避免数据库压力。使用本地缓存和批量预取机制减少Redis交互次数。利用数据库表维护不同业务段的ID分配,减少锁竞争。
2025-09-15 11:53:54
301
原创 SpringBoot接口幂等性方案:告别重复提交
幂等性是指对同一个操作执行一次或多次,产生的结果相同。在Web开发中,接口幂等性设计能有效避免重复提交、网络重试等场景导致的数据不一致问题。客户端首次请求时获取服务端生成的Token,后续请求需携带该Token。服务端校验通过后删除Token,确保仅一次有效。以上方案可单独使用或组合应用,实际开发中需结合具体业务场景进行选择。利用数据库唯一索引或主键约束防止重复数据插入,适合创建类操作。通过业务状态流转控制,确保只有特定状态下才允许操作。适用于更新操作,通过版本号机制控制并发修改。
2025-08-20 17:56:58
238
原创 只需一行代码,任意网页秒变可编辑
浏览器控制台输入document.designMode="on"可开启网页编辑模式,直接修改页面文本内容。该功能支持即时编辑、跨浏览器使用,适用于原型设计、内容校对等场景,修改仅本地生效,刷新即恢复原状。关闭编辑模式执行document.designMode="off"即可。此方法不改变服务器原始文件,适合临时调试展示。
2025-06-13 11:34:43
1160
原创 BigDecimal的用法
BigDecimal 是 Java 中一个用于精确计算的类,特别适用于需要精确控制小数点位数的场景。下面将介绍一些 BigDecimal 的常用操作以及示例代码。以上是关于 BigDecimal 的一些简单用法和示例,希望对你有帮助。
2025-02-21 15:10:19
358
原创 could not be found for the javaType (com.alibaba.fastjson.JSONObject) : jdbcType (null) combination.
将json数据新增or修改,控制台报错。
2024-07-29 17:05:58
382
原创 Spring Boot配置文件密码采用jasypt加密
奇安信代码卫士检测,jar包内容.zip发现配置文件中密码明文显示,得出结论为中等级缺陷,系统安全性将会受到威胁,故将配置文件中存储的密码经过jasypt加密处理的密码值。
2024-06-27 17:14:54
549
1
原创 error An unexpected error occurred: “https://registry.npm.taobao.org/dayjs: certificate has expired“
淘宝镜像证书过期问题
2024-03-11 16:55:57
1065
原创 Access to XMLHttpRequest has been blocked by CORS policy
has been blocked by CORS policy: The request client is not a secure context and the resource is in more-private address space `private`.
2023-12-27 11:28:01
2362
1
原创 MySQL报错:SELECT list is not in GROUP BY clause and contains nonaggregated column,解决ONLY_FULL_GROUP_BY
3.去掉ONLY_FULL_GROUP_BY ,其他参数不变,执行即可。2.查看返回信息是否包含ONLY_FULL_GROUP_BY。1.查看.sql_mode配置。
2023-09-11 16:25:38
1678
原创 关于MySQL递归查询,从子类ID查询所有父类,从父类ID查询所有子类
关于MySQL递归查询,从子类ID查询所有父类,从父类ID查询所有子类
2023-07-28 14:22:51
1274
1
原创 java前后端加密解密crypto-js
适用于接口数据敏感信息,比如 明文传输姓名、居住地址、手机号等信息,如果存在明文传输敏感数据问题、数据泄漏风险,即可使用此方法加密解密解决。
2022-12-22 15:17:04
9948
3
原创 Linux No space left on device 磁盘空间不足
cd /-bash: cannot create temp file for here-document: No space left on device 磁盘空间不足
2022-09-09 17:21:23
638
原创 Linux下载jar包内的class文件,application.yml配置,pom文件等
Linux下载jar包内的class文件,application.yml配置,pom文件等
2022-09-07 10:33:06
1828
原创 Java 端口占用
效果图(示例): [1]: 根据端口号查程序的进程号 netstat -ano | findstr 占用端口号(9061) [2]: 根据程序的进程号查看具体的程序名称 taskkill -f -t -im 进程名(javaw.exe) [3]: 强制、递归 删除本程序及其子进程 taskkill -f -t -im 进程名(javaw.exe)...
2022-03-17 15:17:04
705
原创 Mybatis-Plus eq、ne、gt、lt、ge、le分别代表含义
Mybatis-Plus eq、ne、gt、lt、ge、le分别代表含义eq -> equal等于ne -> not equal不等于gt -> greater than大于lt -> less than小于ge -> greater than or equal 大于等于le -> less than or equal 小于等于in -> in 包含(数组)isNull -> 等于nullbetween -> 在2
2021-11-09 15:58:13
1500
原创 微信公众号开发
微信公众号开发1.微信公众号包<!-- https://github.com/wechat-group/WxJava --><dependency> <groupId>com.github.binarywang</groupId> <artifactId>wx-java-mp-spring-boot-starter</artifactId> <version>3.9.0</version>&l
2021-11-08 10:46:06
317
原创 eclipse安装activiti插件
1.下载安装包百度网盘链接,提取码:g4tx2.eclipse操作下载好了之后,无需要解压包,开始eclipse上操作:Help -> Install New Software;点击Add按钮,然后填入下列字段:Name: Activiti BPMN 2.0 designerLocation: 下载的zip地址3.勾上Activiti BPMN designer ,点击Next;4.勾上I accept…,然后点击Finish;5.等待安装好以后,需要重启eclipse,重
2021-09-26 14:32:32
1719
原创 linux 常用命令
1. 修改文件内容全流程1、进入文件:vim 文件名 eg #vim /etc/httpd/httpd.conf2、查找待修改内容位置 :(1)shift+“:”,使文件变成可查询状态(2)输入 / +查询内容 (eg 查询yuqz参数,即 /yuqz)3、找到位置后修改:按键盘 i 键 即变成可编辑状态4、修改文件内容后退出:按ESC键5、保存修改:(1)shift+“:”,使文件变成可查询状态(2)输入 wq!6、不保存修改:(1)shift+“:”,使文件
2021-09-24 16:25:12
174
原创 java 解决接口跨域
1.引入库代码如下(示例):import org.springframework.stereotype.Component;import javax.servlet.*;import javax.servlet.http.HttpServletResponse;import java.io.IOException;2.解决跨域代码如下(示例):/** * @author yuqz * @date 2021年9月24日 * @Desc 解决跨域问题 */@Componentp
2021-09-24 15:19:02
931
原创 java LoggerFactory日志记录
1.引入库代码如下(示例):import org.slf4j.LoggerFactory;2.日志记录代码如下(示例):protected final Logger logger = LoggerFactory.getLogger(this.getClass());//记录日志logger.info("用户登录成功");//记录错误日志logger.error("getUserInfo 异常【{}】", e);3.application.yml 配置代码如下(示例):####
2021-09-24 15:15:58
1166
原创 常用的git命令
1.创建切换分支创建分支: $ git branch dev切换分支: $ git checkout dev创建并切换分支: $ git checkout -b dev2.查看分支查看当前所有分支: $ git branch查看当前所有分支最新提交记录: $ git branch -vv3.合并分支master分支合并到当前分支: $ git merge master3.拉取推送拉取: $ git pull推送: $ git push总结:创建分支,提交代码到分支git
2021-09-24 14:54:22
110
原创 java抽奖算法
文章目录前言一、抽奖规则二、抽奖算法1.获取活动时间的总时长2.生成随机时间点,过滤抽奖规则前言根据时间区间生成的抽奖算法,这种算法适用于各种抽奖场景,例如:大转盘,老虎机,刮刮乐等。一、抽奖规则如:活动时间为1-15号1.把1号到15号,所有的秒加起来,15* 24* 60* 60 = 13392002.从1到1339200随机取几个数字作为中奖项3.中奖的时间点已经固定了,只有在这个时间抽奖才能中4.加个误差处理,例如中奖时间是08-10 12:00:00,但是这个时间点没人抽奖,那
2021-09-24 11:49:35
3846
原创 读取resources文件并解析html静态资源
1.resources文件目录:2.读取resources文件代码如下(示例):URL url = this.getClass().getClassLoader().getResource("active/zppage.html");3.解析html静态文件代码如下(示例):String tempStr ="";String content = "";InputStream is = url.openStream();BufferedReader br = new BufferedRea
2021-09-24 10:50:39
1072
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅