自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

LiXiaoJin's Blog

但行好事,莫问前程。

  • 博客(31)
  • 收藏
  • 关注

原创 问题记录-笔记本HDMI外接2k显示器如何调2k分辨率

我的老笔记本外接显示器后调不到2K分辨率,记录一下解决方法。笔记本是比较老的了,14年买的,除了发热现在用着还挺好的,外接笔记本在公司办公敲代码用显示器型号是AOC Q2789VU,27寸2K分辨率的,笔记本连接后发现设置里没有2k 25601440 的选项,最高只有19201080的上网查了很多资料,网上说有可能是显卡驱动不行,下载新驱动更新后也不行。英特尔核显驱动下载地址:https://downloadcenter.intel.com/zh-cn/download/29969/-W.

2021-01-19 17:08:29 13277 7

原创 记录服务器被挖矿处理总结

偶然发现CPU一直占用100%,开始还不太在意,后来想想我的程序也没这么多啊导致机器登录ssh的时候都有点卡了。开始检查机器,发现原来是被入侵了,有个木马一直占用这才知道是被别人用来挖矿了,真是无语了搞了好久没搞定,哎,能力有限,一生气直接重装系统了以后安全防范一定要做到位。希望不要再被入侵了,烦死了这次算是体会到主机安全的重要性了,公司最近也在说这个问题,看来还是要多多重视。总结一下:我之前密码设置得太简单了,导致直接被暴力破解安全防护做得不够,防火墙也没有打开22端口

2021-01-19 17:06:45 652

原创 JVM运行时数据区

了解一下JVM运行时数据区1).程序计数器程序计数器是一块较小的内存空间,可以看做是字节码解释器的行号指示器。字节码解释器在工作时通过改变计数器的值来选取下一条需要执行的字节码指令,分支、循环、异常处理、跳转等功能都是通过计数器实现的。为了保证线程切换回来恢复到正确的位置,每个线程都有独立的程序计数器,每个线程独立存储,互不影响,是线程私有的。从上面的介绍中我们知道程序计数器主要有两个作用:字节码解释器通过改变程序计数器来依次读取指令,从而实现代码的流程控制,如:顺序执行、选择、循环、异常.

2020-11-17 11:57:08 178

原创 IDEA 报错:Unable to import maven project: See logs for details 解决方法记录

今天记录一下遇到的问题及解决方法报错:Unable to import maven project: See logs for details新项目用IDEA打开时,引入依赖时总是会报错查看日志看到报错如下: Unable to create injector, see the following errors2020-04-30 14:37:55,048 [11620846] ERROR - #org.jetbrains.idea.maven - com.goo.

2020-11-17 11:56:34 189

原创 ArrayList的扩容机制

今天了解一下 ArrayList 的扩容机制。1. 先看下 ArrayList 的构造方法,有三种(1)带初始容量参数的构造函数,用户可以自己定义容量(2)默认构造函数,使用初始容量10构造一个空列表(无参数构造)(3)构造包含指定collection元素的列表,这些元素利用该集合的迭代器按顺序返回源码如下: /** * 默认初始化大小,10 */ private static final int DEFAULT_CAPACITY = 10; /*.

2020-11-17 11:56:08 1611 1

原创 HashMap 在 JDK1.7 和 JDK1.8 的区别

遇到的一个问题,之前没有好好思考过这个问题,现在研究一下区别最重要的一点是底层结构不一样,1.7是数组+链表,1.8则是数组+链表+红黑树结构;jdk1.7中当哈希表为空时,会先调用inflateTable()初始化一个数组;而1.8则是直接调用resize()扩容;插入键值对的put方法的区别,1.8中会将节点插入到链表尾部,而1.7中是采用头插;1.7采用头插法,会引发环形链表死循环;1.8采用尾插法;jdk1.7中的hash函数对哈希值的计算直接使用key的hashCo.

2020-11-17 11:48:15 247

原创 HashMap

本次主要分析的是JDK1.7和JDK1.8的HashMap。分为两部分来做,1.7链接如下:JDK1.7 HashMap源码学习1.8链接如下:JDK1.8 HashMap源码学习1.7和1.8差异对比:HashMap 在 JDK1.7 和 JDK1.8 的区别HashMap数据结构:原图:https://www.cnblogs.com/leesf456/p/5242233.html...

2020-11-17 11:40:36 90

原创 JDK1.8 HashMap源码学习

HashMap数据结构:图片来源:【集合框架】JDK1.8源码分析之HashMap(一)1.8 引用红黑树数据结构,提高了查询效率构造函数和相关参数:这里和1.7差不多,由于引入了红黑树的数据结构,多了 TREEIFY_THRESHOLD、UNTREEIFY_THRESHOLD、MIN_TREEIFY_CAPACITY 这几个参数 /** * 默认初始化容量大小 16 , 必须是2的幂次方 */ static final int DEFAULT_INIT

2020-11-17 11:39:50 98

原创 JDK1.7 HashMap源码学习

构造函数和相关参数 /** * 默认初始容量 16,必须是2的幂次方 * 为什么必须是2的幂次方 * */ static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16 /** * 最大容量 */ static final int MAXIMUM_CAPACITY = 1 << 30; /** * 默认负载因

2020-11-17 11:10:33 103

原创 Linux系统下安装MySQL

最近学习Spring Boot需要用到数据库,想着在自己服务器上搭建一个MySQL好方便用,记录一下。首先检查机器上是否已经安装有或安装过MySQL,有的话需要将其卸载,把相关的文件删除掉。rpm -qa | grep mysql我安装的是5.7.24版本,网上说高于这个版本有些配置有变化,不适用这个方法。下载MySQLwget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_6.

2020-11-17 11:09:13 98

原创 Spring Boot使用jasypt对配置文件中敏感信息进行加密

日常使用中,数据库、redis、kafka等信息一般会配在配置文件中,而且以明文的方式,这样就很不安全,容易造成重要信息的泄露。正好之前我们做项目的时候用到 jasypt 进行加密存储。最近需要修改数据库密码,正好记录一下这个知识点。

2020-09-01 17:24:21 343

转载 【转载】慢速连接攻击和处理方式

原文链接:https://www.cnblogs.com/xiaoliu66007/p/10174672.html慢速攻击原理http慢速攻击是利用http合法机制,在建立连接后,尽量长时间保持连接,不释放,达到对HTTP服务攻击,攻击者发送POST请求,自行构造报文向服务器提交数据,将报文长度设置一个很大的值,且在随后每次发送中,每次只发送一个很小的报文,这样导致服务器一直等待数据,连接始终一直被占用。如果攻击者使用多线程或傀儡机子去做同样操作,服务器WEB容器很快就被占满TCP连接而不再接受新.

2020-09-01 17:22:00 264

原创 Redis 可以连接但无法进行读写问题,“Could not get a resource from the pool“报错

最近灰度的B组遇到一些问题,可以连上 Redis 却无法进行读写,代码报“Could not get a resource from the pool” 的错,上网查了好多方法都没用,最后才发现是网络的问题。特此记录一下排查问题的过程。

2020-09-01 17:20:31 1197

原创 httpServletRequest.getParameter 参数中存在“&”导致获取不到完整参数的问题

记录最近遇到的坑。起因账管有个信用卡绑定接口,我的调用的时候需要传号码、地址等信息,使用的是 HttpURLConnection,发送的时候将参数转为key=value&key=value 的形式,账管那边使用 httpServletRequest.getParameter() 进行获取参数。问题就是当某些地址中存在 & 符号的时候,因为账管获取参数的时候是通过 & 符号进行截取的,就会导致他们获取参数不全。如:a=123&b=park&center本来.

2020-08-27 14:29:45 1322

原创 Java连接Redis时出现“ERR Client sent AUTH, but no password is set”异常的原因及解决办法

同事刚弄的新环境,Redis 出了个问题,叫我看看。原因他给我的报错如下,我到主机上重新看了下,完整的报错如下:org.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resourc.

2020-08-20 14:14:26 789

原创 垃圾回收算法

今天了解下垃圾回收的算法1.标记-清除算法分为“标记”和“清除”两个阶段,首先会标记出所有要回收的对象,在标记完成后统一回收所有被标记的对象。缺点:(1)标记和清除的过程效率都不高(2)标记清除后产生大量的不连续的内存碎片,如果空间碎片太多的话,当程序需要分配较大内存对象时就无法找到足够大的内存而导致触发另一次垃圾回收2.复制算法复制算法是在标记-清除算法基础上改良而来,原理是将内存容量共分为大小相等的两块,每次只适用其中的一块,当一块的内存用完了,将还存活的对象复制到另一块内存上,然.

2020-08-20 14:11:09 135

原创 Nginx 配置中 root 和 alias 的区别

最近有个seo优化的问题,需要加一些 sitemap.xml 文件,通过 nginx 配置实现,遇到了 root 和 alias 两种写法,记录一下两个的区别。root和alias都可以定义在location模块中,都是用来指定请求资源的真实路径,比如: location = /test { root /home/nginx/nginx/html; }请求 http://xxxxxx/test/a.html 这个地.

2020-08-18 10:33:02 375

原创 Apache相关的几个安全漏洞修复

最近网站被扫描出几个漏洞,大部分都是apache配置引起的,在此记录一下怎么修复。1.检测到目标URL存在http host头攻击漏洞头攻击漏洞,比较常见的漏洞,修复的方法也提供了漏洞的详细描述:为了方便的获得网站域名,开发人员一般依赖于HTTP Host header。例如,在php里用_SERVER[“HTTP_HOST”]。但是这个header是不可信赖的,如果应用程序没有对host header值进行处理,就有可能造成恶意代码的传入。解决办法:web应用程序应该使用SERVER_N.

2020-08-15 09:35:45 4492

原创 按位操作符和移位操作符

今天主要了解一下按位操作符和移位操作符,因为看源码的时候经常会遇到,之前有点不太明白,趁着这次机会学习一下。

2020-08-11 14:28:09 350

原创 IDEA出现“XXX has broken path”报错解决方法

最近换了svn,想着在新电脑部署一下,遇到一个问题,记录一下。前段时间做了个pdf解密的需求,引入了新的 jar包,itextpdf,发现代码里还是在这个新电脑还是报错,表示找不到依赖。看了下 maven 仓库,jar 包已经下载下来了,编译也没问题,就是代码里还报错。试了多次 maven reimport 还是不行。然后看了下,ProjectStructrue -> Modules(这里我已经弄好了,之前是显示标红的)鼠标移动上面,会有 “XXX has broken path” .

2020-08-10 15:50:17 3189 1

原创 Spring Boot内置Tomcat设置超时时间

最近有个小工程扫描出一个安全漏洞, SlowHttp慢速攻击的,需要修改 Tomcat 的配置,也正好关于 Tomcat 的参数调优,正好记录一下。

2020-08-08 09:19:20 15863

原创 IE浏览器不兼容 Array.from 解决方法

上周上线时发现存在一些ie兼容性问题,真是各种坑。我们代码用的是ES6,而IE不兼容ES6,所以这个兼容性问题解决起来真是头疼,路漫漫啊......

2020-08-08 09:17:01 1078 1

原创 new Date()在IOS系统的兼容问题

最近弄5.20的充值活动,有些文案需要在特定时间展示,但是上线后发现在PC、安卓都没问题,就IOS有问题,死活展示不出来。后来一直查证发现是IOS日期的兼容性问题,有点坑,记录一下。

2020-08-07 21:22:28 574

原创 记录一下因localStorage保存语言字段引发的故障

之前晚上上线发现一个问题,部分用户无法打开网站,我们这边的机器又都可以。查了半天是因为 localStorage 引起的,以前的开发人员写代码时也不够严谨,真是头疼。

2020-08-07 21:19:32 237

原创 Vue使用swiper实现轮播效果

最近有个需求需要将网站首页的 banner 弄成轮播效果的,同事推荐使用 swiper 来实现,记录一下。swiper 官网地址:https://www.swiper.com.cn/1、swiper 初始化文章转载自:Swiper中文网 [https://www.swiper.com.cn]<div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-sli.

2020-08-07 21:12:41 1143

原创 shell实现ssh登录并执行命令

最近搞灰度发布,机器太多了,四个国家,每个国家两台机器,启停应用很费时间,所有打算写个shell脚本来提高效率(偷懒~)使用expect可以不用输入密码,避免重复劳动。那什么是expect?查了一下,expect是一个免费的编程工具,用来实现自动的交互式任务,而无需人为干预。说白了,expect就是一套用来实现自动交互功能的软件。在实际工作中,我们运行命令、脚本或程序时,这些命令、脚本或程序都需要从终端输入某些继续运行的指令,而这些输入都需要人为的手工进行。而利用expect,则可以根据程序的提.

2020-08-07 21:08:27 3236

原创 Vue的安装和项目搭建

最近的项目都用到Vue,之前也学过一点,打算继续学习,由于新电脑没有安装Vue,所以记录一下Vue的安装和项目搭建。巩固一下

2020-08-07 21:07:51 147

原创 分布式id生成算法-snowflake算法

snowflake 算法是 twitter 开源的分布式 id 生成算法,采用 Scala 语言实现,是把一个 64 位的 long 型的 id,1 个 bit 是不用的,用其中的 41 bit 作为毫秒数,用 10 bit 作为工作机器 id,12 bit 作为序列号。snowflake 算法源码以下是找到的snowflake 源码/** * Twitter_Snowflake<br> * SnowFlake的结构如下(每部分用-分开):<br> * 0 - 0000

2020-08-07 21:06:40 130

原创 java利用pdfbox实现PDF转为图片

这个是我之前做发票业务时弄的,记录一下。当时需求是要将发票的pdf转化为图片让用户预览,并支持长按图片进行保存。使用pdfbox实现,用起来很方便。

2020-08-07 14:16:20 2565 1

原创 JS中对数字(含有小数的)进行相乘后,数值不正确的问题

之前测试的时候,偶然遇到了个小数相乘的问题,后来找了一下博客,才发现原来是JS浮点运算的问题,故在此记录了一下,避免我忘记。

2020-08-07 14:09:56 1309

原创 第一篇博客

这是我在csdn的第一篇博客,之前是自己弄了个网站自己玩玩,也写了一些东西,后面会把东西慢慢搬过来。写博客的目的是记录自己学的东西和平时工作遇到的问题,就当做个笔记吧,希望可以坚持下去。...

2020-08-07 10:35:01 90

空空如也

空空如也

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

TA关注的人

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