自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 idea 如何手动重置缓存,让idea顺利启动

进入C:\Users{user}\AppData\Local\JetBrains\IntelliJIdea2023.3。我idea启动了十多分钟。只能手动清理缓存了。

2024-03-12 20:24:50 145

原创 【家庭服务器系列】如何定时唤醒

最近购买了一台cpu为n5105的mini主机作为家庭服务器。为了省电,不让24小时都开着,故每天休息8小时。这个时候直接断电不合适,里面还有各个服务。网上找了半天。找到一个命令可以用。在配合宝塔的计划任务每天凌晨执行。

2024-02-24 16:50:18 263

原创 为什么推荐java程序员尽量用arrayList而不是linkedlist

由上面的测试可知,除了队列场景之外,都应该优先选择ArrayList来作为队列存储的实现。如果涉及到大量的随机插入的情况,可以考虑使用树结构。

2024-02-01 20:57:44 410 1

原创 记录关于spring boot的原有jna依赖版本号对代码造成的影响

我导入公司同事的jna-sdk包同事依赖的jna是5.11.0但是我这边却编译失败发现是jar包冲突。通过idea的maven依赖分析。发现我同时又4.5.0和5.11.0的jar包寻找网上的资料无果。

2024-01-13 23:49:11 463

原创 【性能优化】记录一次由于文件io过高导致cpu占用过高的bug(二)关于底层

写文件,要最好使用缓冲流式的写入。这样子会减少文件描述符的读取。磁盘的随机访问,内核的切换。

2024-01-13 22:14:19 434

原创 【性能优化】记录一次由于文件io过高导致cpu占用过高的bug(一)

之所以第二种方法会降低cpu的占用是因为:第二种方法(使用缓冲的版本)使用了缓冲输出流(BufferedOutputStream),这有助于减少磁盘IO操作的次数。缓冲输出流会在内存中缓存数据,直到一定数量的数据被写入或直到缓冲区被刷新到磁盘,这样可以减少对磁盘的直接写操作,从而提高性能。由于减少了磁盘IO操作,CPU的占用率可能会降低,因为CPU不必等待磁盘操作完成。

2024-01-04 14:48:26 643

原创 将tomcat注册为centos上面的一个systemctl服务

前言为了更好的管理自己编写的小程序,可以将自己写的一些小工具直接注册为linux服务。下面,我就以tomcat注册为systemctl举例子下载tomcat在apack官网下载 tomcat-8.5.61 :https://tomcat.apache.org/download-80.cgi然后通过xftp放到自己的目标目录解压tomcat并且编辑# 因为我下的tomcat是zip压缩的,所以先下一个unzip解压软件yum install unzip# 在目标目录解压unzip apach

2021-01-27 21:42:54 443 2

原创 漫道多线程(二):临界区、锁与JMM

欢迎大家查看我的上一篇博客:多线程与并行计算简述临界区在上一章,我们就讨论过,在多线程程序中数据是脆弱的,而这些脆弱的数据在多线程的概念中就是所谓的临界区临界区用来一种公共资源资源或者是共享享数据,可以被多个线程使用。但是每一次,只能有一个线程使用它,一旦临界区资源被占用,其他线程想要使用这个资源,就必须等待。锁锁的作用就是保障临界区阻塞与非阻塞阻塞与非阻塞是用来形容线程间的影响的。通过临界区的定义我们可知,当一个线程占用了临界区资源,那么其他线程必须在这个临界区等待。等待会导致线程挂起

2021-01-17 16:57:59 437

原创 漫道多线程(一):多线程与并行计算简述

漫道多线程(一):多线程与并行计算简述文章目录漫道多线程(一):多线程与并行计算简述什么是并行计算什么是多线程并行计算的好处1.硬件上的迫切需要2.更好的提升资源利用率为什么要使用多线程实现并行计算CPU时间分片并行与并发并发并行如何在java中使用多线程继承Thread类实现Runable接口(java8的Lambda可以轻松实现)java线程模型以及编写多线程代码会面临的问题如何解决多线程 并发中数据不一致的问题设计上如何避免使用锁保护脆弱的数据synchronized锁volatile锁原子类锁什

2021-01-04 22:57:41 1490

原创 hashMap底层源码浅析

hashmap是我们经常使用的一个工具类。那么知道它的一些原理和特性吗?特性HashMap是一种基于散列算法实现的快速查找的键值对结构。底层实现是链表数组。允许空键和空值(但空键只有一个,且放在第一位)元素是无序的(这里的无序是指的插入和读取的顺序不一致)JDK 8 后又加了底层加上了红黑树优化过长的链表以及并行遍历。概述HashMap可以分析的地方很多,网上也有许多文章,本文仅从以下几个方面进行分析:基础变量插入(动态扩容,延迟插入,红黑树转换,可以说的地方很多)并行遍历(jdk

2020-12-26 20:59:45 14310 37

原创 我所理解极简java的23种经典设计模式(附加举例)

作为java程序员,设计模式是一个无论如何都绕不开的知识点。话不多bib,直接上干货:一、什么是设计模式比较正式的定义是:设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都

2020-12-15 23:28:37 2204

原创 关于auth0的jwt

JWT(Json Web Token)用于无法产生cookie的项目(App/微信小程序 )同时解决了分布式中session共享的问题(登陆信息以非对称加密的形式存在客户端中,只消耗cpu以及网络io,自然解决了分布式session共享)JWT 规定了7个官方字段,提供使用。iss (issuer):发布者 sub (subject):主题 iat (Issued At):生成签名的时间 exp (expiration time):签名过期时间 aud (audience):观众,相

2020-12-08 00:29:57 3319

原创 apche 反射api的使用心得

最近在因为在反射的使用过程中愈发觉得java的原生反射api在大部分的场景下比较繁琐。于是换成了apache的反射包,感觉apache的反射包爽多了。以下是代码示例实体类@Data@Accessors(chain = true)public class StudentEntity { private String name; private int age; public static StudentEntity create张三(){ r.

2020-08-25 20:45:02 1055

原创 谈一谈关于jwt的一些事

谈一谈关于jwt的一些事什么是jwt?jwt的特点总结jwt的好处JWT与OAuth的区别JWT踩坑什么是jwt?谈到jwt,我们必须了解到jwt是用来干什么的,我的个人理解jwt是用来处理存储分布式的用户信息的一种工具。在没有jwt之前,我们通常是如何存储用户的登录信息的呢?session存储:通过登录后,将用户的的登录数据保存在session存储,等到需要时再从session中取出来进行使用。但是这样一来就出现了一个问题,随着分布式时代的到来,session的一些问题就暴露了出来,比如无法跨服

2020-08-21 00:47:48 379

原创 js的数据结构类型---json解析(1)

本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl + Q插入链接 Ctrl +

2017-05-06 23:59:21 1378

空空如也

空空如也

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

TA关注的人

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