- 博客(57)
- 资源 (10)
- 问答 (3)
- 收藏
- 关注
原创 CompletableFuture 开启异步线程,主线程不等待
在Java中CompletableFuture用于异步编程,异步编程是编写非阻塞的代码,运行的任务在一个单独的线程,与主线程隔离,并且会通知主线程它的进度,成功或者失败。在这种方式中,主线程不会被阻塞,不需要一直等到子线程完成。主线程可以并行的执行其他任务。一般应用场景:在业务开发中可能会遇到调用多个第三方接口,同时要求主流程不被阻塞。使用这种并行方式,可以极大的提高程序的性能。
2024-09-04 20:16:36 347
原创 java8、lamda、list分组转map,并且value只保留一个
【代码】java8、lamda、list分组转map,并且value只保留一个。
2024-09-04 18:13:28 397
原创 Function、Consumer、Supplier、Predicate都是什么意思?怎么用?
【代码】Function、Consumer、Supplier、Predicate都是什么意思?怎么用?
2024-09-04 17:44:02 156
原创 springboot实现上传文件接口(简单版)
上传完成之后需要访问,可以使用springmvc静态资源代理(线上项目不推荐,建议使用nginx静态资源代理)使用springboot实现一个最简单版本的上传文件接口。
2024-04-07 10:27:03 570
原创 springboot实现国际化
今天在开发过程中,遇到国外客户,要求项目一些返回msg中,不能再有中文,于是便有了国际化需求。前端可在接口请求头中添加 Accept-Language=en/zh 用于区别中英。messages_en.properties 英文配置文件。messages_zh.properties 中文配置文件。messages.properties 国际化主文件。
2024-03-08 10:48:43 631 1
原创 java实现flv转mp4/视频格式转换
java实现flv转mp4/视频格式转换,今天在开发过程中,突然遇到给前端flv格式视频还播放不了,flv在开发印象中就是跟mp4格式差不多,本地静态视频资源,怎么还就播放不了,为此只能特别做下视频转换。
2024-01-31 09:42:59 1037
原创 java实现图片裁剪
在日常开发中,偶尔会遇到产品提出要求“图片裁剪”,对于这种需求那可是一头雾水啊,以前光记得crud了,现在突然来了个大活。需求:我们只裁剪下半段照片。
2024-01-24 10:13:44 991
原创 关于微信/支付宝等平台验签/签名sign生成算法
这是微信支付统一下单接口文档,最简单的理解就是,服务端为了安全考虑,要求客户端在请求时,将请求参数全部进行加密生成一个密文传过来,然后服务端在通过请求参数进行加密生成密文,比对这俩密文是否一样,如果一样说明本次请求是安全的。一般文档会告诉你,先将所有参数按照ASCII码从小到大排序,中间key=value拼接,各个参数之间&拼接,然后再将秘钥拼接,最终采用MD5方式加密转大写就可以生成sign。一般在对接这种平台,会提供接口地址、请求方式、请求参数、appid、appsecret。
2023-12-08 15:17:23 1138
原创 java 对视频/音频/各种文件进行加密解密
本文使用AES对称式加密,对各种文件进行加密/解密,只需要给一个秘钥,还有资源目录以及输出目录即可。纯属小爱好,java 对视频/音频/各种文件加密解密。
2022-09-29 14:23:46 2840 3
原创 关于AES加密报错 InvalidKeyException: Key length not 128/192/256 bits.
关于AES加密报错 InvalidKeyException: Key length not 128/192/256 bits.
2022-09-29 10:32:32 4900
原创 如何提升自己的运气
运气"是个很奇妙的东西,数学家会说这个东西就是概率而已,没有什么好说的。而物理学家会说,运气可以用量子力学来解释,属于混沌学的范畴,是一门严谨的科学。当然,大多数人认为运气纯粹是玄学,是故弄玄虚。谁能改变自己的运气呢?我是这样看的,运气是客观存在的,里面包含的是概率,但更多的是客观规律和人性。我先说客观规律。查了一下数据,过去3年,每年死于交通事故的人数都在6万以上,也就是每天164个人。那么司机怎么样才能让自己运气更加好呢?你去调查一下那些事故案例就知道了,有酒驾的,有不遵守交通规则的,有大
2022-02-23 09:38:11 455
原创 关于lamda的sort多字段排序
今天遇到个需求,要按照两个字段排序(一个倒序一个正序),乍眼一看用sql(order by)就ok了,结果实际情况不是想象那样,那个数据不是直接sql能查出的,需要在代码中做一些处理。先给上个栗子:@Data @AllArgsConstructor @ToString public static class Student { private Integer age; private Integer score; } pub
2021-12-24 10:25:14 1692 3
转载 java适合私活的快速上手项目
1.D2admin开源地址:https://github.com/d2-projects/d2-admin文档地址:https://d2.pub/zh/doc/d2-admin/效果预览:https://d2.pub/d2-admin/preview/#/index开源协议:MIT2.vue-element-admin开源地址:https://github.com/PanJiaChen/vue-element-admin文档地址:https://panjiachen.gith
2021-12-03 17:48:24 301
原创 每个月存500零花钱,第9年就会有10W?
假设你每个月存500零花钱,找个年化15%的产品,那么第9年你猜下你会有多少钱?答案是:115821,过十万了,可以轻轻松松买个紧凑版汽车了。再假设程序员工资算是比较高了,每个月存5000元,那么第9年你猜下会有多少钱?答案是:110W,你没有看错,然后第12年过200w,第15年过300w,第18年过500w,第23年过千万,第30年资产近乎3千万。复利是一个很神奇的数学公式,废话不多说了,先上我的计算代码供大家学习: /** * 复利计算器 *
2021-09-02 18:31:14 281
原创 推荐几个优秀的Mongodb 可视化管理工具
1.NoSQLBooster(mongobooster)NoSQLBooster是MongoDB CLI界面中非常流行的GUI工具。它正式名称为MongoBooster。NoSQLBooster是一个跨平台,它自带一些mongodb工具来管理数据库和监控服务器。这个可以手写SQL语句运行非常非常棒的一款。这个Mongodb工具包括服务器监控工具,Visual Explain Plan,查询构建器,SQL查询,ES2017语法支持等。它有免费,个人和商业版本,当然,免费版本有一些功能限制。NoSQLBoo
2021-08-04 10:45:55 1256
原创 MySQL删除重复数据保留最新一条
伙伴们经常线上会有一些脏数据我们要进行去重处理,例如我们有一张user表里面有三条数据,现需求按照age进行删除重复数据,每个年龄只能保留一条并且是最新的一条1.我们先来验证一下重复数据-- 验证sqlSELECT age,COUNT(*) FROM user GROUP BY age;18岁有两条,19岁有一条,我们只要删除18岁中id最小的那一条记录即可2.去重处理DELETE FROM USER WHERE age IN ( SELECT t1.ag
2021-07-08 14:51:15 1240 2
原创 java Hutool发送邮件附带附件 使用文件流、字节数组方式
MailUtil.send();无法发送文件流,//这个方式只能传入本地File,无法传入网络资源MailUtil.send();
2021-06-16 18:09:29 3231 7
原创 java实现远程资源地址文件转本地文件
/** * 远程资源地址文件转本地文件 * * @param fileUrl 资源地址 * @return * @Description 网络资源转file(记得用完以后必须删除该临时文件) */ public static File urlToFile(String fileUrl) { String path = System.getProperty("user.dir"); File tempFile.
2021-06-16 17:59:10 915
原创 docker容器之间相互访问解决方案
docker 提供network 创建一个网桥,让彼此多个不同容器之间可以进行访问。1.创建network 网桥docker network create test-network2.启动容器带网络
2021-06-10 17:32:35 949
原创 springboot监听 redis 中的key值过期,进行时间通知
,<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency>
2021-06-09 16:57:25 577 2
原创 ES启动报错 mamaster not discovered yet,this node has not .......
master not discovered yet, this node has not previously joined a bootstrapped (v7+) cluster, and this node must discover master-eligible nodes [node-1] to bootstrap a cluster: have discovered 报错原因:主节点尚未被发现错误个人解决方案:先按照我这个copy#es会自动发现在同一网段下的es,# 如果在同一
2021-05-26 17:49:58 5048
原创 docker启动es报错 [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase
使用docker run 启动es 报错如下处理方法:vi /etc/sysctl.conf添加如下代码:vm.max_map_count=262144刷新系统配置sysctl -p最后就启动成功了
2021-05-25 16:08:12 1174
原创 这是一篇对xxl-job的入门理解
xxl-job是什么?我们先百度看一下里面有解释道:这是一个分布式任务调度平台,可以这样理解在分布式环境下的完全独立出来的定时器项目,也是一个独立的项目独立运行;我们为什么要使用它:因为定时器如果写在业务项目中会非常的占用内存,而且定时器多了很容易让服务崩掉,所以当我们的业务量上来的时候一定要和定时器任务模块分开。那么这里其实完全可以自己独立搭建一个springboot项目去专门跑定时器任务(其实可以,不过没有xxl-job好用,xxl-job学习简单、轻量级别、方便扩展而且它支持集群分片等等,而且
2021-05-21 17:35:58 457 1
转载 http的长连接和短连接(史上最通俗!)
1.以前的误解很久之前就听说过长连接的说法,而且还知道HTTP1.0协议不支持长连接,从HTTP1.1协议以后,连接默认都是长连接。但终究觉得对于长连接一直懵懵懂懂的,有种抓不到关键点的感觉。今天通过一番研究,终于明白了这其中的奥秘。而之前,也看过长连接相关的内容,但一直都是云里雾里的。这次之所以能在这么短的时间里搞清楚,和自己技术的沉淀密不可分。因此,这里借着这个机会,再次强调一下,千万不要试图去研究你研究了很久都整不明白的东西,或许是你的层次不到,也或许是你从未在实际的应用...
2021-05-12 11:31:57 247 1
原创 Log4j2支持异步打印提高打印输出速度
Log4j2支持异步打印提高打印输出速度pom依赖添加<!--log4j2异步支持--><dependency> <groupId>com.lmax</groupId> <artifactId>disruptor</artifactId></dependency>全局模式2两种第一种:resources 下创建属性文件 log4j2.component.properties# lo
2020-12-24 14:47:38 398
原创 mysql行转列
mysql行转列mysql三大范式第一范式 :每个列具有原子性,不可再分(现代关系型数据库都符合);第二范式:每个列都和主键相关(每个表描述同一个事物);第三范式 :每个列都和主键直接相关,不存在传递依赖;开发过程中表的设计一般符合第三范式,范式越高、表就越多、结构越复杂、性能越差。能出现行转列的原因,大多数是由于历史原因或者性能原因,都使用了违反第一范式的设计模式。即每个列具有原子性,不可再分(具体结构见下表)。 这种模式下,应用常常需要将这个列依据分隔符进行分割,并得到列转行的结果。
2020-11-27 13:57:29 207
原创 mysql如何计算某字段用逗号分割的数量
mysql如何计算某字段用逗号分割的数量如上图我们要计算出每一行中的车牌数量;SELECT LENGTH(bus_number) - LENGTH(REPLACE(bus_number,',','')) + 1 LENGTH FROM tb_bus_number ;分析:原始字段内容的长度 - 把逗号进行删除后的内容长度 = 该字段中有多少个逗号;然而最后一位是不带逗号的所以要+1;以上实现只是一条思路,也许要有更好的函数之类的。...
2020-11-20 10:19:23 2728 2
原创 解决maven依赖包下载慢的问题
修改maven 目录下setting.xml配置文件,在mirrors中添加一下配置 <!--配置alimaven镜像--> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>
2020-09-16 14:20:59 136
转载 这是我读过写得最好的【秒杀系统架构】分析与实战!
1 秒杀业务分析正常电子商务流程 查询商品; 创建订单; 扣减库存; 更新订单; 付款; 卖家发货; 秒杀业务的特性 低廉价格; 大幅推广; 瞬时售空; 一般是定时上架; 时间短、瞬时并发量高; 2 秒杀技术挑战假设某网站秒杀活动只推出一件商品,预计会吸引1万人参加活动,也就说最大并发请求数是10000,秒杀系统需要面对的技术挑战有:1、对现有网站业务造成冲击秒杀活动只是网站营销的一
2020-09-10 17:28:50 338
原创 推荐一款非常非常好用的java插件-Hutool
Hutool这是一款包含大家在开发过程中想封装一些自己的方法,他全都帮你们封装好的一款java插件,能够更好地提高开发效率;https://hutool.cn简介Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。Hutool中的工具方法来自于每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;Hut
2020-09-10 11:23:54 713 1
原创 推荐几款开发常用的小插件
推荐几款开发常用的小插件1. uTools软件# uTools 是什么?uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。通过快捷键(默认 alt + space )就可以快速呼出这个搜索框。它相当聪明,你可以往输入框内粘贴文本、图片、截图、文件、文件夹等等,能够处理此内容的插件也早已准备就绪,统一的设计风格和操作方式,助你高效的得到结果。一旦你熟悉它后,除了能够为你节约大量时间,不中断、无干扰,让你可以更加专注地改变世界。#
2020-09-10 11:05:55 3243 1
原创 提高github仓库下载速度
1.githubd代下载地址: https://githubd.com2.shrill-pond-3e81 github下载加速地址: https://shrill-pond-3e81.hunsh.workers.dev/
2020-09-07 17:34:17 144
原创 jquery-migrate-1.2.1.min.js 作用
在网上下载一些 js 插件使用的时候,经常出现这种情况。 但是更换低版本 jquery,比如 使用 1.7 版本的 jquery 却不会报错,能正常使用。 经过一番搜索,发现是因为高版本(1.9版本以后)不兼容以前的,需要引入一个jquery-migrate.min.js 来兼容。 具体原因如下 : 应用迁移辅助插件 jQuery 版本之间有区别。 比如1.9版本对于 live(),die(),toggle(),sub(),$.browser 等等都已经不支持了。...
2020-09-01 17:13:14 1956
原创 CentOS 7 yum 安装 Nginx
安装步骤添加Nginx到YUM源sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm安装Nginxsudo yum install -y nginx启动Nginxsudo systemctl start nginx.service如果一切进展顺利的话,现在你可以通过你的域名或IP来访问你的Web页面来预览一下Nginx的
2020-06-20 09:13:48 106
java 对视频/音频/各种文件进行加密解密
2023-11-29
SecureCRTSecureFX_7.0.0.326中文版.rar
2020-09-10
SourceTree2.6.10(中文版)安装包.zip
2020-04-23
springboot整合dubbo简易的demo
2019-07-29
简单的页面注册到数据库
2018-01-12
关于ByteArrayOutputStream 引起的 OOM
2022-10-01
mysql子查询索引失效问题
2021-12-01
java实现电子围栏功能。
2021-11-11
cassandraTemplate 执行sql语句不能同时使用in 和 order by
2021-08-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人