自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

兴趣使然的草帽路飞

最怕你一生碌碌无为,还安慰自己平凡可贵!

  • 博客(27)
  • 资源 (6)
  • 收藏
  • 关注

原创 notepad++查看二进制.class文件——HexEditor插件(64/32位)安装教程

最近在学习JVM的时候,碰到需要查看.class文件,这里给大家推荐两种方式:方式一:使用JDK自带的反编译工具javap命令例如,一个简单的 HelloWorld.java 程序:public class HelloWorld { public static void main(String[] args) { System.out.println("hello world!"); }}接下来执行:javac -parameters -d . HelloWorl

2021-04-28 20:27:42 2851

原创 SpringBoot整合RedisTemplate实现缓存信息监控

实现效果如图:注意:文章基于使用SpringBoot整合Redis,整合步骤和Redis基本操作默认读者已经掌握。1. redisTemplate获取获取redis信息根据Connection获取Redis缓存全部信息:// 方式1:获取Redis缓存全部信息Properties info = redisTemplate.getRequiredConnectionFactory().getConnection().info();// 方式2:根据Connection获取Redis缓存指定

2021-04-26 11:58:33 2860 1

原创 Java并发基石CAS原理以及ABA问题

在学习CAS之前,先从一个简单的案例入手,进而引出CAS的基本使用:1、基于CAS的网站计数器需求:我们开发一个网站,需要对访问量进行统计,用户每发送一次请求,访问量+1,如何实现?我们模拟有100个人同时访问,并且每个人对咱们的网站发起10次请求,最后总访问次数应该是1000次。1.1 网站访客统计Demo代码如下:public class Demo { // 网站总访问量 static int count = 0; // 模拟用户访问的方法 publi

2021-04-25 19:59:37 3019 3

原创 MySQL如何解决幻读和不可重复度?

文章参考:https://juejin.im/post/5b8577c26fb9a01a143fe04ehttps://joonwhee.blog.csdn.net/article/details/106893197http://blog.51cto.com/14344203/2402076注意:探讨MySQL如何防止不可重复度和幻读问题之前,默认大家已经理解脏读、幻读、不可重复读的区别,以及数据库事务的3种隔离级别!1. MySQL中的3种锁算法首先了解下MySQL中的3种锁算法:.

2021-04-24 13:01:11 3132 4

原创 JVM_02 内存结构(堆、方法区)

本文参考:黑马程序员JVM教程1、堆1.1 定义是Java内存区域中一块用来存放对象实例的区域【几乎所有的对象实例都在这里分配内存】通过new关键字创建的对象都会被放在堆内存,jvm 运行时数据区中,占用内存最大的就是堆(Heap)内存!1.2 堆的作用此内存区域的唯一目的就是存放对象实例方法体中的引用变量和基本类型的变量都在栈上,其他都在堆上Java 堆(Java Heap)是 Java 虚拟机所管理的内存中最大的一块 Java 堆是被所有线程共享的一块内存区域1..

2021-04-23 19:26:17 1804 1

原创 Java中的深拷贝与浅拷贝

深拷贝和浅拷贝区别是什么?数据分为基本数据类型和引用数据类型。基本数据类型:数据直接存储在栈中;引用数据类型:存储在栈中的是对象的引用地址,真实的对象数据存放在堆内存里。浅拷贝:对于基础数据类型:直接复制数据值;对于引用数据类型:只是复制了对象的引用地址,新旧对象指向同一个内存地址,修改其中一个对象的值,另一个对象的值随之改变。深拷贝:对于基础数据类型:直接复制数据值;对于引用数据类型:开辟新的内存空间,在新的内存空间里复制一个一模一样的对象,新老对象不共享内存,修改其中一个对象的值,不会影响另.

2021-04-14 16:42:26 2179 9

原创 JVM_06 类加载与字节码技术(类文件结构)

类加载与字节码技术1、类文件结构一个简单的 HelloWorld.java 程序:public class HelloWorld { public static void main(String[] args) { System.out.println("hello world!"); }}接下来执行:javac -parameters -d . HelloWorld.java 命令编译.java文件为.class文件:获得二进制字节码文件后怎么读呢?有2种

2021-04-30 20:16:37 2945 10

原创 JVM_05 垃圾回收制(GC调优)

GC 调优预备知识:GC相关的VM参数:官方文档查看虚拟机参数命令:"C:\Program Files\Java\jdk1.8.0_201\bin\java" -XX:+PrintFlagsFinal -version | findstr "GC"D:\Note\笔记\JDK源码学习\IDEA-workspace\jdk8>"C:\Program Files\Java\jdk1.8.0_201\bin\java" -XX:+PrintFlagsFinal -version |

2021-04-28 19:16:17 2974 3

原创 JVM_04 垃圾回收机制

JVM 垃圾回收1、如何判断对象可以回收引用计数法如果一个对象被其他变量所引用,则让该对象的引用计数+1,如果该对象被引用2次则其引用计数为2,依次类推。某个变量不再引用该对象,则让该对象的引用计数-1,当该对象的引用计数变为0时,则表示该对象没用被其他变量所引用,这时候该对象就可以被作为垃圾进行回收。引用计数法弊端:循环引用时,两个对象的引用计数都为1,导致两个对象都无法被释放回收。最终就会造成内存泄漏!可达性分析算法可达性分析算法就是JVM中判断对象是否是垃圾的算法:该算法首先要确定

2021-04-28 07:59:24 2988 3

转载 PageHelper分页插件原理

浅析pagehelper分页原理彻底理解ThreadLocal总结:PageHelper首先将前端传递的参数保存到page这个对象中,接着将page的副本存放入ThreadLoacl中,这样可以保证分页的时候,参数互不影响,接着利用了mybatis提供的拦截器(PageHelper实现了和mybatis一样的interceptor接口,调用其中的intercept方法),取得ThreadLocal中page对象的值,通过反射机制,首先查询出数据总数量,然后进行分页SQL的拼装,完成分页。...

2021-04-27 10:15:03 2090

原创 Java服务器主机信息监控工具类

对接前端后效果展示如图:1、CPU相关信息实体类/** * CPU相关信息 * * @author csp */public class Cpu{ /** * 核心数 */ private int cpuNum; /** * CPU总的使用率 */ private double total; /** * CPU系统使用率 */ private double sys;

2021-04-26 15:38:05 3330 24

转载 LongAdder源码解析

1、LongAdder由来LongAdder类是JDK1.8新增的一个原子性操作类。AtomicLong通过CAS算法提供了非阻塞的原子性操作,相比受用阻塞算法的同步器来说性能已经很好了,但是JDK开发组并不满足于此,因为经常搞并发的请求下AtomicLong的性能是不能让人接受的。如下AtomicLong 的incrementAndGet的代码,虽然AtomicLong使用CAS算法,但是CAS失败后还是通过无限循环的自旋锁不多的尝试,这就是高并发下CAS性能低下的原因所在。源码如下:public

2021-04-26 10:52:52 2079 1

转载 若依前后端分离版(RuoYi-Vue)新增自定义子模块

参考文章:https://blog.csdn.net/kerafan/article/details/108903548

2021-04-25 10:25:35 2179

原创 王道考研计算机网络笔记目录

计算机网络笔记总结:Part1 概述计算机网络笔记总结:Part2 物理层计算机网络笔记总结:Part3 数据链路层计算机网络笔记总结:Part4 网络层计算机网络笔记总结:Part5 传输层计算机网络笔记总结:Part6 应用层...

2021-04-24 19:34:13 6352 6

原创 计算机网络笔记总结:Part5 传输层

文章参考:王道考研——计算机网络1. 概述1.1 传输层的意义网络层可以把数据从一个主机传送到另一个主机,但是没有和进程建立联系。传输层就是讲进程和收到的数据联系到一起,使数据能够为应用服务。所以说传输层是主机才有的层次!1.2 传输层的两个协议1.3 传输层的寻址和端口端口号只用于计算机分辨本地进程,总共有2^16=65536种端口号,端口号有很多种,不能随便使用。1.3.1 常见的应用程序端口号2. UDP协议2.1 UDP概述因为UDP一次发送一个完整报文不会分片,.

2021-04-24 19:31:01 2041

原创 计算机网络笔记总结:Part6 应用层

文章参考:王道考研——计算机网络1. 概述因为不同的网络应用之间需要有一个确定的通信规则。1.1 两种常用的网络应用模型1.1.1 客户/服务器模型(Client/Server)1.1.2 P2P模型(Peer-to-Peer)网络健壮性指的是P2P模型不容易坏掉,即使一个节点坏了也没问题,可以有其他节点代替。2. 域名系统协议(DNS)2.1 概述DNS就是将打在地址栏的域名转化为IP地址的东西。2.1.1 域名域名就是www.xxx.com,当然这是最简单的一种 .co.

2021-04-24 18:59:15 1973

原创 计算机网络笔记总结:Part4 网络层

文章笔记整理于:王道考研——计算机网络1. 概述数据报和分组的关系:分组是一段比较长的数据,将它进行切割成一段段之后就得到数据报功能一:让数据在路由器之间走最佳的路径。功能二:让不同的设备(手机,电脑,平板等)都能正常连接。功能三:拥塞控制开环控制:在拥塞之前就提前设计解决。闭环控制:在拥塞时自动调整解决问题。OSI参考模型各层次的传输单元应用层报文传输层报文段网络层IP数据报,分组(如果IP数据报太大就切割成分组)数据链路层.

2021-04-24 18:36:35 2070

原创 MySQL主从复制与表拆分相关问题总结

文章参考:https://joonwhee.blog.csdn.net/article/details/106893197问题:如何做慢 SQL 优化?首先要搞明白慢的原因是什么:是查询条件没有命中索引?还是 load 了不需要的数据列?还是数据量太大?所以优化也是针对这三个方向来的:首先用 explain 分析语句的执行计划,查看使用索引的情况,是不是查询没走索引,如果可以加索引解决,优先采用加索引解决。分析语句,看看是否存在一些导致索引失效的用法,是否 load 了额外的数据,是否

2021-04-24 13:44:49 4874 9

原创 计算机网络笔记总结:Part3 数据链路层

文章参考于B站:王道考研——计算机网络1. 基本概念2. 封装成帧与透明传输封装成帧就是加将数据加头加尾,相当于将数据打包透明传输就是为了防止特殊的数据无法正常传输的的情况的发生,比如说在封装成帧的过程中出现数据中的某些标记符与开始/结束标记符恰巧重复等等情况2.1 透明传输的应用2.1.1 字符计数法就是在帧的首部做计数,看看数据是否错误。缺点:如果在某一个帧内,标记位后面的某个字节的数据丢失,那么会影响后面的帧:比如3 1 1 和 4 2 2 2,如果前面的帧丢失变成 3 1.

2021-04-21 18:36:05 1256 2

原创 计算机网络笔记总结:Part2 物理层

文章参考于B站:王道考研——计算机网络相关文章:计算机网络笔记总结:Part1 概述学习建议:对于准备找实习且还没学过计网的小伙伴,可以跟着王道考研的教程过一遍知识点,然后刷面试题(在面试时候常考的只是计网的某些部分内容,考研可能侧重点更多些理论知识)!考研题和面试题可能侧重点不太一样,根据自己的选择情况刷题!1. 基本概念物理层的概念:物理层解决如何在在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。物理层的任务及其作用:确定与传输媒体接口有关的一些特性,即定义标准.

2021-04-17 12:17:14 1303 4

转载 MySQL中联表查询条件WHERE和ON的区别?

先来看一个关联查询的DEMO:select * from student s left join class c on s.classId=c.id order by s.id查询结果如下:下面在ON 条件中拼接一个条件:s.name="张三"select * from student s left join class c on s.classId=c.id and s.name="张三" order by s.id查询结果如下:在ON 条件中拼接一个条件:c.name="三年级三班"

2021-04-16 15:03:18 1508 4

原创 Java中静态变量/成员变量、静态内部类/成员内部类小节

静态内部类和内部类的关系只有内部类才能被声明为静态类,即静态内部类;只能在内部类中定义静态类;静态内部类与外层类绑定,即使没有创建外层类的对象,它一样存在;静态类的方法可以是静态的方法也可以是非静态的方法,静态的方法可以在外层通过静态类调用,而非静态的方法必须要创建类的对象之后才能调用;静态内部类只能引用外部类的static成员变量(也就是类变量)如果一个内部类不是被定义成静态内部类,那么在定义成员变量或者成员方法的时候,是不能够被定义成静态的;总结:是否能拥有静态成员:静态内部类.

2021-04-14 17:30:30 2133 4

原创 Java子父类继承情况下构造函数/代码块/静态代码块执行顺序

实例来源:《Java编程思想》,博客链接:Java编程思想1-15章笔记案例代码:class A{ public A() { System.out.println("1.父类A的构造方法"); } { System.out.println("2.父类A的构造代码块"); } static{ System.out.println("3.父类A的静态代码块"); }}public class B .

2021-04-14 17:17:08 1978

原创 Java中的128陷阱和new String(“xxx“)创建了几个对象问题

String s = new String("abc") 创建了几个字符串对象?// 答案:1个或者2个Ⅰ 如果字符串常量池中已经有"abc"存在,这种情况只需要新建1个对象,否则就需要新建2个对象。Ⅱ 当字符串常量池没有 "abc",此时会创建如下两个对象: * 一个是字符串字变量 "abc" 所对应的、驻留(intern)在一个全局共享的字符串常量池中的实例,此时该实例也是在堆中,字符串常量池只存放引用。 * 另一个是通过 new String() 创建并初始化的,内容与"abc"相同的实.

2021-04-14 15:58:30 2058

原创 蓝桥杯Java-B组2013-2018真题整理

视频链接:2013年-2018年蓝桥杯历年省赛真题 Java C++ A组 B组 C组2013年Java-B组真题1.世纪末的星期代码如下:public class Test37 { public static void main(String[] args) { Calendar calendar = Calendar.getInstance(); for (int year = 1999; year < 10000; year+=100) { calendar..

2021-04-14 09:38:18 1281

原创 从学校步入社会,人都不自觉的长大了,也变得要强起来!

在学校的时候,每个月都理所应到的从爸妈那里得到一笔不算多也不算少的生活费。这千百块虽然不能说让自己每天随意挥霍,但是也能保证在温饱的情况下,偶尔陪室友聚餐恰个饭,电影院看几场电影,或者游戏里给自己喜欢的角色添一个新皮肤。三年下来,月月如此的吃父母回扣,甚至有时候还想多要一些生活费,好满足自己的一些超前消费所需。其实,自己也长大成人了,有时候是很反感自己还是像小学中学那样,张嘴伸手就是问爸妈要钱。上大学三年来,我也多次想过,再也不问爸妈要生活费了,自己去找一份兼职,在保证学习不耽误的前提下,自己养活自己的日

2021-04-04 19:03:45 11210 55

原创 总结一些Chrome常用插件以及Tampermonkey脚本管理插件(可用于刷网课)

如果文章对您有帮助,点赞关注支持一下哈~Chrome浏览器常用插件这里推荐大家使用https://chrome.pictureknow.com/去下载插件,并安装到Chrome浏览器!步骤如下:下载crx插件文件(以谷歌助手为例)下载crx文件完成后打开谷歌浏览器的扩展程序管理将下载的crx插件文件拖入谷歌浏览器的扩展程序管理界面然后就可以使用插件了!下面推荐一些常用谷歌插件:1.谷歌助手在https://chrome.pictureknow.com/中搜索谷歌助手,并进行下载.

2021-04-01 13:25:19 6474 21

2020最强Java面试题共(6000页).zip

2020最强Java面试题共(6000页)

2021-03-04

elementary(数据结构与算法源代码).zip

elementary(数据结构与算法源代码)

2021-03-04

dnpicture.zip

我的测试Demo

2020-12-28

Java编程思修第4版本学习笔记(上).pdf

Java编程思修第4版本学习笔记(上),总结了Java编程思修这本树1-15章节的内容,我的博客中也有对应的文章供大家阅读~

2020-11-26

Java编程思修第4版本学习笔记(下).pdf

Java编程思修第4版本学习笔记(下),总结了Java编程思修这本书16-21章节的内容,我的博客中也有对应的文章供大家阅读~

2020-11-26

IO、通信中间件Netty入门

Netty 是由 JBOSS 提供的一个java开源框架, 是业界最流行的NIO框 架,整合了多种协议 包括FTP、SMTP、HTTP等各种二进制文本协议)的实现经验,精 心设计的框架,在多个大型商业项目中得到充分验证。

2020-11-06

空空如也

空空如也

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

TA关注的人 TA的粉丝

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