自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

腾蛟起凤吕学士

成长在于点滴积累

  • 博客(98)
  • 资源 (5)
  • 收藏
  • 关注

原创 自如电费均摊问题

这里假设一个月30天, 3室,先只住了A居住3天满,B在第27天来,假设1-26日电费费用为900RMB,27-30,3日电费费用为100RMB,如果根据实际情况的算法来,B用户只需要交付他来的那3天里100元的一半,也就是50元。按照该算法来,如果2个人同时住满30天,那么则是 (900+100)/ (30 + 30) * 30 = 1000 / 2;3月份搬了次家,嫌麻烦租了自如,第一个月的电费账单出来了,由于我是中途搬进去的,于是乎就好奇他会如何计算均摊,这个月电费账单出来了,算了下发现了点东西。

2024-04-19 12:02:16 726

原创 Java 调用 Groovy 脚本的简单案例

Groovy和Java都是使用 JVM 虚拟机进行解释执行的。工作中会遇到一些场景,需要对特殊的业务进行解耦。那段业务可能会经常变动,如果直接在Java代码里写业务的话就会涉及频繁的发包服务重启这类情况,那么如果我门把那段业务变成脚本的形式,单独做一个界面把它做成类似可以在线配置更改的情况,那么业务变动后直接在线改代码,而且立刻生效,这样是不是就特别方便。例如定时任务里的xxx-job。

2024-03-14 17:01:07 553 1

原创 JAVA使用POI向doc加入图片

刚来一个需求需要导出一个word文档,文档内是系统某个界面的各种数据图表,以图片的方式插入后导出。一番查阅资料于是乎着手开始编写简化demo,有关参考poi的文档查阅网上大多数是XXX模板占位然后插入图片,那种方式需要内置模板且图片需要转base64,并不是我想要的,我的需求很简单只要无脑插入导出即可。先上demo效果图。注意:代码中宽高的单位一定要使用Units.toEMU(XXX)处理一下,否则就会出现插进去了但是你看不到效果的情况。

2023-12-08 18:49:03 939

原创 MySQL字符集大小写不敏感导致的主键冲突问题记录

数据入库的时候报了个主键冲突的error,很是纳闷于是乎开始排查摸索起来,发现是字符集导致字段值大小写不敏感导致的问题。记录一下加深映像又或者如navicat创建时显示指定。平时我并没有太在意,只知道MySQL的utf8是个假的utf8 ,mysql中的utf8最多只能支持3bytes长度的字符编码,对于一些需要占据4bytes的文字,mysql的utf8就不支持了,要使用utf8mb4才行。对于排序规则我一般都用脑子里只知道它对大小写不敏感,此次遇到的问题就和排序规则有关。

2023-10-09 16:51:37 667

原创 fastDFS 6.0.9 单机安装案例

发现fastdfs安装部署这块内容网上还是比较多的但是版本啥的都已经比较老旧了,于是乎搜了下官方公众号最近的一次推荐部署版本 V6.09,就准备开干了。网上搜了下已经有大哥部署过该版本了centos7上单机安装fastdfs6.0.9,我就结合官网的install和大哥的手册跟着来了一遍,全程没卡壳很顺利。

2023-07-19 11:32:46 747

原创 Nginx connect req access 模块

Nginx connect req access 模块。

2023-04-09 17:07:51 485 1

原创 Nginx专题-开启认证并开放指定下载目录

本案例演示使用nginx的模块开启路径访问,支持文件下载。开启模块,支持访问时输入账号密码认证。

2023-04-07 23:02:03 407

原创 Nginx已安装的情况下添加新模块

nginx已安装的情况下添加新模块

2023-04-05 11:56:52 444

原创 Nginx专题-基于域名的虚拟主机的实现

nginx 基于域名的虚拟主机的实现

2023-04-03 23:39:35 198

原创 Nginx专题-基于端口的虚拟主机实现

Nginx基于端口的虚拟主机实现

2023-04-03 23:17:34 180

原创 Nginx专题-基于多网卡的主机配置

Nginx 基于多网卡的主机实现

2023-04-03 22:56:49 2424 1

原创 Nginx 模块及配置文件结构

nginx的模块和配置文件的结构,待完善

2023-04-02 22:05:19 152

原创 Nginx 专题-热部署平滑升级

热部署(Hot Deployment)是指在应用程序运行过程中,无需停止应用程序,直接将修改后的代码部署到应用程序中,并立即生效的一种部署方式。

2023-04-02 17:47:27 419

原创 Nginx 专题- 安装

nginx 体系学习第一篇,环境安装

2023-04-02 15:35:11 818

原创 Mybatis-Plus3.5.1版本 代码生成器使用

代码生成器,解放双手。mybatis-plus的代码生成器功能强大,使用方便,这里记录一下案例。

2023-03-06 23:28:14 406

原创 并发编程学习案例-ReentrantReadWriteLock非公平的情况下读锁插队和写锁插队场景复现

Java是的实现类,可以分出2把锁,读锁和写锁。我们知道读读之间可以共享,读写、写写是互斥的,这样并发度比这种互斥锁更高。在公平的场景下,多个线程会排队按顺进行加锁和释放锁;在非公平的场景下如果排队中的线程在唤醒期间还未唤醒时,此时如果有其它写线程加入则无需进入对列等待可插队获取到锁;如果在唤醒期间还未唤醒时,排队的队列里头节点是读线程,此时如果有其它读线程加入则无需进入对列等待可插队获取到读锁;。这里复现读锁在特定的场景下插队的场景复现。

2023-02-03 23:47:32 501

原创 并发编程学习案例-单线程和多线程1加到1000W耗时对比

从1开始每次加1 加1000万次,你会怎么使用多线程的方式来加快计算速度,并且保证结果一致?

2023-02-02 11:43:38 356

原创 并发编程学习案例-具有暂停功能的线程池

使用钩子函数扩展线程池,使其具有暂停线程的功能自定义线程池类,继承自ThreadPoolExecutor对其进行扩展(添加暂停、恢复的函数),同时重写beforeExecute()函数。

2023-01-11 11:56:35 232

原创 并发编程学习案例-停止线程池

对停止线程池的一些函数示例,体验关闭期间池子对任务的不同处理方式,主要对一下方法进行熟悉演练shutdownisShutdownisTerminal。

2023-01-10 23:29:08 101

原创 并发编程学习案例-模拟Executors.newFixedThreadPool内存溢出

JUC里的线程池,使用可以创建线程数的线程池,细看其源码,其实它调用的是核心线程数和最大线程数相等的线程池,并且使用的工作队列类型是 LinkedBlockingQueue(无边界),也就是说负载及其大的情况下,队列中的任务可以无限堆积,那么就很容易会造成OOM。下面模拟一下这种情况造成的OOM。

2023-01-10 18:29:36 826

原创 并发编程学习案例-模拟抢红包

再来系统动手学习一下Java并发编程。的发令枪使用模式;红包均分,最后一个分不完的解决方法抢红包的需求,每个红包均分,最后一个除外1. 设置红包总额2. 设置红包的个数3. 模拟抢红包的人数 (细节:涉及余额分配 10元3个人抢,得把钱分完)4. 抢红包,同一时间多个人可以同时开始 (细节:要保证同时开始)

2023-01-09 23:05:58 861

原创 Window 环境 安装 mycli

mycli 是一个 MySQL 命令行客户端工具,具有自动完成和语法突出显示功能。

2023-01-05 12:09:00 1012

原创 接口请求日志记录案例

记录一下 siem_log 接口请求日志记录设计案例。

2022-12-27 22:58:53 345

原创 接口访问权限控制案例

记录一下 接口访问权限设计的案例。

2022-12-27 22:37:33 516

原创 Redisson实战

记录一下redisson 客户端操作redis list 的使用案例demo。

2022-12-27 21:10:22 221

原创 elasticsearch实战

最近项目里需要对某块功能的查询支持全文检索功能,于是乎使用到了专门的搜索引擎 elasticsearch来实现。通过2周左右的官网资料查询,成功在项目中引入并使用,这里记录部分使用内容。es官网的刷新速度很慢,我是通过把官网的页面下载到本地后,需要时再挨个打开浏览。学习es 主要还是先学习其基础的语法,在kibanna里先熟悉命令行的方式,以及操作的返回数据格式,再去熟悉Java 客户端,再容易不过了。此次字段类型主要用到了es的 text类型,keyword类型,number类型,data类型;查询

2022-12-27 16:04:02 1867

原创 解决maven 父工程依赖传递导致的 java.lang.NoClassDefFoundError: org/elasticsearch/xcontent/ToXContentObject

在学习elasticsearch,在使用elasticsearch Java 客户端时,出现了写问题,主要就是报各种的 `NoClassDefFoundError`如:`java.lang.NoClassDefFoundError: org/elasticsearch/xcontent/ToXContentObject`,出现这种 NoClassDefFoundError 的问题基本上就是maven 依赖错误或者版本不对,于是顺着这个思路排查,摸到了问题所在。

2022-12-06 11:50:10 5487

原创 IDEA设置和相关快捷键记录汇总

Java 开发 现在基本都是使用 IDEA 作为开发工具,IDEA 有很多设置和常用的快捷键,熟悉之后能更好的提高开发效率,这里总结了下从慕课网的内容,摘录做成笔记,方便查阅。

2022-11-26 17:57:24 943 1

原创 excel导入导出demo笔记

excel 导入导出的算是项目里很常见的一个功能,以前都是使用POI来,一直知道阿里有个这次尝试去了解了下,感觉确实很方便,上手容易。这里记录下方便后续来捞代码。

2022-11-24 11:28:49 466

原创 FastJson 枚举自定义序列化成枚举属性值

类中如果有使用枚举,fastjson序列化不做处理时就会被序列化成 枚举的名字,今天刚好遇到,记录一下使用自定义序列化,反序列化的方式使得 枚举序列化时使用枚举里的属性,而不是枚举的名称。pom

2022-11-22 20:05:47 2839

原创 IntelliJ IDEA 多行TODO注释

IntelliJ IDEA 2018 以后 支持多行TODO注释,现在第一行和所有后续的TODO注释行在编辑器中突出显示,并在TODO工具窗口中列出。只需从多行TODO注释的第二行开始添加缩进,IDE就会将其与普通注释区分开来。

2022-11-19 00:25:22 463

原创 mybatis-plus使用小結

mybatis-plus 使用小结

2022-11-18 15:14:35 606

原创 JSON序列化与反序列化做深拷贝对象

开发中经常会遇到值传递和地址传递的情况,有时候想传入一个对象去某个方法中进行处理,地址传递在该方法内部会做一些处理会导致对象内存中的内容有所变化,这样就会出现不是自己想要的情况,常做的方式就是拷贝一个当前对象的副本传入进去处理,这样就不会影响原对象,这就涉及到深拷贝和浅拷贝。这里分享通过JSON序列化和反序列化的方式得到一个深拷贝的对象。

2022-11-17 10:10:30 550

原创 Spring boot 全局异常处理

Spring boot 全局异常处理

2022-11-16 16:41:31 1116

原创 Spring boot 整合 Swagger使用swagger-bootstrap-ui

记录一下 Spring boot 整合增强版的 swagger-ui, 有了这个,基本可以省去postman调用了,极其方便。

2022-11-15 20:01:04 1099

原创 Spring boot 读取YAML 到配置类

一直对yaml 语法不是很熟悉,恰巧这次抽空熟练一下,结合配置类做个映射。含日期的处理 date,dateTime, localDate, localDateTime。需要注意日期格式的映射,还有就是Key 大小写的问题。

2022-11-15 15:16:30 302

原创 Kafka单机部署学习演示案例

Kafka单机部署学习演示案例,附带压测结果

2022-11-14 22:32:42 1106

原创 Redission 实现全局自增ID案例记录

【代码】Redission 实现全局自增ID案例记录。

2022-10-30 22:09:35 2233

原创 MySQL text 能存多少个字符

今天测试给提了个bug, 排查原因是插入数据时字段长度不够导致。我使用的是MySQL8的数据库,在给某个表新增一条数据,其中一个字段submit_info使用的是text的类型预设用来存储大的json字符串。之前对text到底能存多长的字符串没概念,恰好这次预到问题决定调查一下。这里记录一下。

2022-10-27 17:57:53 8259

原创 《透视 HTTP 协议学习》摘录

1989 年,任职于欧洲核子研究中心(CERN)的**蒂姆·伯纳斯 - 李()**发表了一篇论文,提出了在互联网上构建超链接文档系统的构想。这篇论文中他确立了三项关键技术。

2022-10-25 23:30:37 911

nexus-3.20.1-win64

nexus-3.20.1-win64

2023-05-04

es官网网页部分下载内容

es官网网页部分下载内容

2022-12-11

elasticserach 7.17.4版本的中文 IK分词器

elasticserach 7.17.4版本的中文 IK分词器

2022-12-08

elastic-stack.zip

elastic-stack.zip

2022-12-06

kafkademo内含ZooInspector

kafkademo内含ZooInspector

2022-11-16

mq个人学习资料,涵盖kafka,rockmq

mq个人学习资料,涵盖kafka,rockmq

2022-11-14

zookeeper入门学习

zookeeper入门学习

2022-10-09

xxl-job的demo

xxl-job的demo

2022-08-28

redis5.0 window版本

redis5.0 window版本

2022-08-21

Axure google插件

Axure google插件

2022-08-21

人人开源的代码生成器解放生产力

人人开源的代码生成器解放生产力

2022-08-10

审批流设计初稿,审批流设计初稿

审批流设计初稿,审批流设计初稿

2022-08-07

Apache Atlas 2.2.0 编译版本,开箱即用

Apache Atlas 2.2.0 编译版本,开箱即用

2022-07-20

docsify 本地 markdown 美化

docsify 本地 markdown 美化

2022-07-16

mybatis-plus-demo

mybatis-plus-demo 学习

2022-07-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除