自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 问答 (1)
  • 收藏
  • 关注

原创 通过Java将多个PDF文件合并

打算将多个PDF合并称一个PDF方便去打印,使用WPS合并还要会员?Java做PDF处理的框架那当然是apache开源的PDFBox啦。一看官方API文档,一搜索就有一个mergeUtil,方便。使用File遍历文件夹下所有文件,并且合并成一个PDF。这么小的功能都不给白嫖,有点不厚道哦。常见的PDF操作功能都有啦。

2023-06-08 22:49:58 396

原创 今天解决了一个主从延迟导致超发的问题

分析主从同步的过程,给出主从延迟的原因,最后亮出解决方案,包括mysql层面和从业务层面两个方面。。。。

2022-11-20 12:57:21 777 1

原创 实现一个简单的短链服务

使用数据库自增ID的方式实现可自定义短链、安全不连续的短链服务,在数据量不大小规模使用且想简单做的情况可进行参考。

2022-11-20 12:54:35 913

原创 一个敏感词检查功能是怎么来的

基于前缀树的敏感词过滤方法,分析敏感词过滤的需求和分析前缀树的由来和优点,分析前缀树的引入过程和为何前缀树能提高速度。重点做分析不是实现。

2022-11-20 12:53:47 1691

原创 controller、service、Dao是否是线程安全的?

先对线程安全的定义进行解释,之后再分析如何保证线程安全,最后对controller、service等类进行分析是否线程安全的。最后做总结

2022-11-20 12:52:29 829

原创 定时任务调度中心简单竞品分析

简单的对xxl-job、elastic-job、Saturn进行分析对比

2022-08-18 15:47:48 401

原创 https请求发生received fatal alert: handshake_failure; nested exception 异常分析和解决方法

received fatal alert: handshake_failure; nested exception 异常分析和解决方法,分析https过程,数据包情况,加密件套情况,异常解决思路

2022-08-14 23:19:42 3792

原创 实现IP地址归属地显示功能、号码归属地查询

IP和归属地对应关系、手机号码和归属地关系等相对静态的数据高效查询方法。设计一种数据结构,提供以极低的内存消耗和极快的查询速度。提供一份原始的数据可以直接使用。将数据拷贝和代码拷贝到自己的项目去即可使用。可用于IP归属地显示,手机号码归属地显示等需求的开发提供方法和数据的支撑。...

2022-07-05 00:15:50 1591

原创 @ConfigurationProperties使用不当引发的bug

介绍@ConfigurationProperties的使用方式,注意事项等

2022-06-26 09:15:00 890

原创 HTTP请求头大小写问题踩坑记录

http协议header字段名大小写不敏感,所以在判断header是否相等时需要自己做忽略大小写得逻辑。

2022-04-08 10:34:24 18531

原创 Java后端接口返回视频流,使用video组件播放视频,实现分段下载

Java后端接口返回视频流,使用video组件播放视频,实现断点下载视频进行播放,让获取视频接口支持http断点传输协议。内含完整可用代码

2022-01-15 15:42:01 22177 16

原创 一段感动程序员的代码

刷leetcode,刷着刷着突然被感动哭了,不仅仅学到了知识,也学到了哲学

2021-12-01 16:20:18 832

原创 由InputStream.available()引发的偶现bug

分析错误使用available()方法的案例,available()不合规使用后果的原因,分析spring boot网络请求中流的原理,分析@RequestBody原理

2021-11-22 12:17:20 2348

原创 mysql字符串长度有影响吗varchar(255)和varchar(100)保存相同长度字符串有区别吗

知道之后不要默认每个字段都这样写了,varchar(255)和varchar(100)保存相同长度字符串磁盘使用空间一样,但是处理数据时使用的内存不一样,效率不一样的。

2021-11-02 16:57:48 2759 3

原创 mysql8.0忘记密码的解决方案

之说命令不截图,亲测有效

2021-10-22 11:26:32 2111

原创 mybatis分页插件。左连接,一对多查询时分页失效

前言pageHelper是一款优秀的Mybatis分页插件,在项目中可以非常便利的使用,使开发效率得到很大的提升,但不支持一对多结果映射的分页查询,所以在平时的使用时,对于一对多分页会出现分页错误,这篇文章主要对pageHelper分页错误进行重现以及提出解决方案。分析mybatis进行一对多查询时,映射文件(mapper.xml)中的sql语句中使用的左连接,pageHelper会自动对这条左连接sql语句进行select count(0)的处理,并把结果作为分页结构的记录总数,然后自动将limit

2021-03-08 12:30:36 1724

原创 听说你想用Java去掉或者替换PDF里全部文本?看这

听说你想用Java去掉文章里全部文本?看这,PDFBox去文本

2020-12-31 16:58:27 1707 1

原创 mysql定义字段varchar(255)报错超长?

平时习惯性的设计变长字段varchar(255),确保正常情况下数据库用一个字节保存长度信息,节省内存。但是有一次建表语气。create table user( id int auto_increment comment '自增主键', username varchar(255) not null comment '登录用户名', deleted int null comment '删除标志,0正常1删除', con

2020-11-28 11:08:37 3146

原创 IntelliJ IDEA : .java文件 左下角显示“J”,并且不能执行代码

IntelliJ IDEA : .java文件 左下角显示“J”,并且不能执行代码问题的复现、解决办法和原因分析

2020-10-23 08:49:17 8922 3

原创 限流组件sentinel疑问

刚刚使用sentinel进行限流的一些疑惑和解答

2020-06-26 18:01:14 276

原创 python实现一个很简单的多线程爬虫

分享实现一个简单的多线程爬虫的思路和解决办法,多线程爬虫可以显著的提高爬虫爬取的速度

2020-02-25 22:35:38 630

原创 数据库保存经纬度时用什么数据类型

一个事实各大在线地图,使用的经纬度坐标都精确到小数点之后第六位计算赤道周长为40075020m,维度360度,所以1度表示4007502m除以360等于111319.5m。也就是说1个维度表示111319.5m。也就是说当小数点六位时可以精确到111319.5m*0.000001=0.1m。...

2019-12-26 20:34:49 9245

原创 小数二进制和十进制转换

十进制转换二进制规则:将该数字乘以2,取出整数部分作为二进制表示的第1位;然后再将之前所得的数小数部分乘以2,将得到的整数部分作为二进制表示的第2位;以此类推,直到小数部分为0。显然就会发现小数部分一直不等于0的情况,这时候就得到一个无限位数的二进制小数点,计算机就无法完整保存所以就出现了所谓的浮点误差。比如2.30换成二进制0.3 * 2 = 0.6 ——————- 00.6 * 2 =...

2019-12-26 11:54:05 1844

原创 手机通过低功耗蓝牙控制智能硬件——51单片机智能小车

手机客户端使用微信小程序进行蓝牙的连接和控制信号的发送,蓝牙使用的是CC2541模块,其实支持蓝牙4.0都可以,硬件方面用小小的51单片机接收手机客户端的控制信号

2019-12-17 11:20:17 986 3

原创 Java泛型实现原理

前言首先在直到泛型马,就是一个类型变量,可以放入任何类型得东西,Java是强类型的不得乱加类型,使用前必须指定类型是什么否则就报错无法编译,而泛型就可以理解为一个类型参数,就一个参数用的时候指定这恶参数的是什么就可以,也就是用的时候再指定类型,这样子也不会报错。历史强类型有哪些弊端也就很明显,有的时候需要类型是运行的时候才知道的,比如写List接口啥的,肯定不能事先知道要放的是什么类型,又...

2019-09-16 15:01:59 603

原创 MySQL——锁机制简述

简述MySQL中各种锁原理和如何保证隔离级别和各个锁之间的关系

2019-09-15 17:46:29 236

原创 MySQL事务隔离级别和MVCC

MVCC 英文全称为Multi-Version Concurrency Control,翻译为中文即 多版本并发控制。事务隔离级别脏写:一个事务修改了另一个未提交事务修改过的数据,也就是区修改别人未提交的部分当回滚时就修改不复存在了。脏读:一个事务读到了另一个未提交事务修改过的数据,同样的回滚时就读取到了一个不存在的数据,不可重复读:就是说一个事务没有提交的时候读取了另一个数据,读取之后...

2019-09-14 21:41:33 186

原创 MySQL中redo日志和undo日志简述

redo日志磁盘的随机IO和顺序IO随机IO即IO操作的地址是随机的不连续的,顺序IO是操作的磁盘地址是连续的Buffer Pool缓冲池,也就是当读取一页数据进行一波操作后并不会立马就删除或者同步更新修改到磁盘中,而是保存在所谓的Buffer Pool中,下次用到时就不用重新读取了,因为读取磁盘的速度实在太慢太慢了。Buffer Pool的空间肯定是有限的,为了保存一直用到的数据,所以...

2019-09-14 13:15:22 563

原创 微信小程序客服自动回复——PHP实现

介绍微信小程序客服自动回复的开发程序,可以直接先用再研究代码

2019-09-13 22:26:56 2122

原创 单例模式的实现

定义这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。实现public class Singleton{ //一个私有的静待变量保存类的实例,不可直接访问和修改 private static Singleto...

2019-09-11 16:16:50 123

原创 说说MySQL索引机制

简述索引的基本原理分析,和sql语气执行慢的原因分析,和使用索引的建议

2019-09-11 15:14:03 254

原创 红黑树和多叉树介绍和理解

前言二叉搜索树的一个缺点是不平衡,当插入的数是随机数时效果很好,当插入的是有序的数时就和链表一样了,没有了插入和查询都块的特点了,这里介绍一种改进保证了二叉搜索树的平衡,当插入的是顺序也好随机也好都能保证二叉树平衡,即红-黑树,只是在原来二叉树的基础上加了一下特定的条件契约让树可以一直保证平衡。(平衡树两个叉节点数差不多,不平衡树一边有节点多一边有节点少),加入什么特性使得二叉搜索树能保持平...

2019-09-03 19:16:54 661

原创 简述请求过程

面试中问:说说一个请求从浏览器到服务器响应的过程、、tomcat处理请求过程、、说说你对容器的理解

2019-09-03 19:04:43 226

原创 小白tomcat9配置SSL

建议:先看tomcat的日志,还有tomcat的官网文档一般都会详细描述。这里官网文档链接申请证书后下载tomcat版的证书压缩包解压得到一个文件得到.pfx文件和里面是密码的txt文件。并上传到服务器某个目录,一般在tomcat安装目录的conf/cert/我用的是阿里云的免费证书……首先导入本地密钥库,生成.jks文件执行指令keytool -importkeystore -sr...

2019-08-21 22:38:27 786

原创 关于项目部署到tomcat出现404问题的一种情况记录

记录小白部署java web 到服务器的坑由于本人习惯性的命名习惯第二个单词都要*首字母大写命名然后项目的名字用两个单词第二个单词首字母大写了,然后用IDEA直接运行时项目名称帮你自动生成都是小写字母,不修改直接确定就忽略了,然后在浏览器端输入两个小写就可以,然后尝试打包成war包,然后放到appwebs目录下按常规教程来,结果出现可以访问tomcat欢迎页面但是死活访问不了自己的项目,...

2019-08-18 02:55:47 1232

原创 类文件结构和类加载过程执行引擎简述

简述java程序的一路遭遇,和执行大致过程,类文件结构的组织思路,类的加载过程,字节码执行引擎……多态的本质

2019-07-10 23:48:17 179

原创 二叉树简介

详细介绍二叉树为后面常用的红黑树234树B树等打下基础,插入删除查找,二叉树的思想优缺点,基于二叉树的哈夫曼编码的思想和实现

2019-07-06 17:10:21 157

原创 关于指令集位数,指令构架位数简述

简言之就是处理器架构的位数越高,速度越快,内存越多处理器架构的位数是指通用寄存器的宽度,其决定了寻址范围的大小、运算能力的强弱。譬如32位架构的处理器,其通用寄存器的宽度是32位,能够寻址的范围是2的32次方,即4GB的寻址空间,运算指令可以操作的操作数是32位,也就是说一个机器周期内可以处理32个01,。指令集就是可以通过它区控制CPU的东西,比如叫CPU做加法运算啥的发出一个指令(命令)就...

2019-07-03 12:51:44 1213

原创 Java虚拟机的垃圾回收

回答一下GC在什么时候发生,回收算法,标记算法

2019-07-03 09:21:35 281

原创 虚拟机内存结构简述

讲讲各个区域内存存写啥

2019-07-01 15:06:58 214

空空如也

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

TA关注的人

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