北海道恋人
码龄7年
求更新 关注
提问 私信
  • 博客:109,692
    109,692
    总访问量
  • 56
    原创
  • 43
    粉丝
  • 1
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
加入CSDN时间: 2018-10-30

个人简介:某不知名大学在校学生

博客简介:

千里之行,始于足下

查看详细资料
个人成就
  • 获得116次点赞
  • 内容获得54次评论
  • 获得269次收藏
  • 代码片获得345次分享
  • 博客总排名1,929,690名
创作历程
  • 1篇
    2022年
  • 10篇
    2021年
  • 46篇
    2020年
成就勋章
TA的专栏
  • Spring
    1篇
  • JDK源码
    4篇
  • 有趣的算法
    13篇
  • JVM
    7篇
  • MyBatis
    1篇
  • MySQL
    3篇
  • 网络原理
    2篇
  • WebSocket
    2篇
  • 数据结构基础
    12篇
  • Bug
    2篇

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 0

兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 服务器
    linux
创作活动更多

王者杯·14天创作挑战营·第2期

这是一个以写作博客为目的的创作活动,旨在鼓励码龄大于4年的博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。 注: 1、参赛者可以进入活动群进行交流、分享创作心得,互相鼓励与支持(开卷),答疑及活动群请见https://bbs.csdn.net/topics/619735097 2、文章质量分查询:https://www.csdn.net/qc 我们诚挚邀请你们参加为期14天的创作挑战赛!

78人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

搞不清JUC类之间的关系?看看这张图吧

JUC类体系图
原创
发布博客 2022.03.27 ·
592 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

MySQL数据库——事务(ACID特性、事务并发问题、事务隔离级别、锁类型、MVCC机制)

事务MySql 数据库设计了事务隔离机制、锁机制、MVCC多版本并发控制隔离机制,用一整套机制来解决多事务并发问题。事务的ACID特性事务有四大特征:简称ACID特征原子性(Atomicity):保证事务是一个不可分割的整体例:支付操作必须全部完成,不能只完成一部分一致性(Consistency):使数据库从一个一致性状态转移到另一个一致性状态例:支付操作要么支付成功,要么支付失败。如果只成功一部分那么就要回滚(rollback)至未支付的状态隔离性(Isolation):不同事务之间不能互
原创
发布博客 2021.06.22 ·
453 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

MySQL数据库——索引(B+树索引、Hash索引、聚簇索引、非聚簇索引、最左匹配规则)

一、MySQL索引索引:索引是帮助MySQL高效获取数据的排好序的数据结构1.1 MySQL索引类型从数据结构上区分为:B+树索引Hash索引B+树与B树B树特点:叶节点具有相同的深度,叶节点的指针为空所有索引元素不重复节点中的数据索引从左到右递增排列非叶节点存储索引和对应的数据内容B+树特点:非叶节点不存储数据内容、只存储索引信息叶子节点使用指针连接,提高区间访问的性能在MySQL中一个数据页的大小是默认是16k查看mysql文件页大小(16K):SHOW GLOB
原创
发布博客 2021.06.22 ·
686 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

MyBatis源码全体系流程图

MyBatis源码全体系流程图文章目录MyBatis源码全体系流程图MyBatis是一个半自动的ORM持久层框架主要使用步骤MyBatis在查询数据库时使用了二级缓存机制MyBatis的ConfigurationMyBatis几个重要接口和抽象类MyBatis源码全体系流程图MyBatis是一个半自动的ORM持久层框架主要使用步骤写mybatis-config.xml和mapper.xml写mapper.xml对应的mapper接口(可省略)获取SqlSessionFactory获取SqlS
原创
发布博客 2021.05.30 ·
473 阅读 ·
0 点赞 ·
4 评论 ·
2 收藏

看不懂线程池源码?ThreadPoolExecutor核心源码这样实现

ThreadPoolExecutor核心源码注释文章目录ThreadPoolExecutor核心源码注释执行流程图核心属性构造方法execute()方法addWorker()Worker()构造Worker的run()runWorker()getTask()processWorkerExit()执行流程图核心属性// 存储线程池的状态,高3位表示线程池状态,低29位表示worker数量 private final AtomicInteger ctl = new AtomicInteger(
原创
发布博客 2021.05.25 ·
212 阅读 ·
1 点赞 ·
3 评论 ·
0 收藏

Java-WebSocket使用简介

Java WebSocket详解写在前面,在项目中需要使用到websocket和前端进行交互时在网上寻找资源,但看了各种博客,一言难尽。最后看Oracle的JavaEE文档将WebSocket算是有了一个比较清晰的理解。本文只对核心概念和核心使用方式进行说明(只说明注解方式,官方推荐),详细信息情参考官方文档,连接如下。文档:https://docs.oracle.com/javaee/7/tutorial/websocket.htm文章目录Java WebSocket详解一、WebSocket
原创
发布博客 2021.05.03 ·
6104 阅读 ·
8 点赞 ·
3 评论 ·
17 收藏

通用方式解决根据二叉树遍历重建二叉树问题

通用方式解决根据二叉树遍历重建二叉树问题重做LeetCode题目的时候,发现两道题目非常类似,但之前却用了两种写法差别比较大的解法。感觉可以合并为同一种方式进行解决,于是找出了如下的通用方式解决这两个问题题目一:输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]题目二:根据一棵树的中序遍历与后序遍历构造二叉树
原创
发布博客 2021.04.06 ·
145 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

还学不会Spring源码?保姆级图示带你不一样的体验

Spring源码-声明式事务流程源码学习最好的办法还是DeBug,分享出自己Debug时画出的流程图,分享出自己deBug时的源码注释https://gitee.com/jueminggitee/spring.git
原创
发布博客 2021.03.31 ·
867 阅读 ·
2 点赞 ·
0 评论 ·
7 收藏

WebSocket整合SpringBoot并传输JSON数据进行操作

WebSocket整合SpringBoot并传输JSON数据进行操作1、引入依赖<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.1.RELEASE</version> &l
原创
发布博客 2021.03.22 ·
3394 阅读 ·
0 点赞 ·
0 评论 ·
12 收藏

数据结构-实现一个SimpleBloomFilter布隆过滤器

SimpleBloomFilter布隆过滤器是一种判断元素是否存在的数据结构使用一系列的二进制位来判断元素是否存在特点:效率很高但有误判的可能误判:当插入一个元素的时候根据hash函数将该元素使用随机的几位二进制进行表示当查找时只有元素对应的所有二进制位都为1时代表查询成功该元素可能存在(原因:可能会存在某个元素虽然不在过滤器中,但是刚好hash得到的几位二进制都为1,即表示元素存在)如果一个元素哈希的二进制位有一位是0 就代表元素不存在总结:布隆过滤器是一个判断元素是否可能存在的数
原创
发布博客 2021.03.19 ·
172 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

数据结构-单调栈 leetcode 下一个更大的数

数据结构-单调栈 leetcode 下一个更大的数2由leetcode题目引入:刷题时看到这道题,第一反应使用循环数组暴力解题了,附上代码暴力解题代码public static int[] nextGreaterElements(int[] nums) { int[] res = new int[nums.length]; Arrays.fill(res,-1); int j; int index; for (int
原创
发布博客 2021.03.06 ·
292 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第三届传智杯程序设计赛B组题解Java版

第三届传智杯程序设计赛B组题解Java版文章目录第三届传智杯程序设计赛B组题解Java版A - 课程报名B - 期末考试成绩C - 志愿者D - 终端E - 运气A - 课程报名import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt
原创
发布博客 2020.12.28 ·
2783 阅读 ·
7 点赞 ·
4 评论 ·
57 收藏

No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc

SpringCloud OpenFeign报错No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalancer?问题原因:今天的疑惑报错,我大意了啊,没有闪。使用Spring Initializr初始化项目引入了openfeign,没有在意版本。直到运行项目进行远程调用时报错No Feign Client for loadBalancing defined.
原创
发布博客 2020.12.04 ·
32898 阅读 ·
46 点赞 ·
27 评论 ·
61 收藏

Java ---- HashMap扩容方法源码

HashMap扩容方法源码失踪人口回归!终于腾出手来发一篇水文,给大家乐呵乐呵。无发方强!共勉HashMap的扩容当原数组存放元素过多会导致Hash碰撞的概率增大,降低效率。所以需要适时的对数组进行扩容,以减少Hash碰撞,存储更多的元素。默认扩容阈值是原数组空间利用0.75之后进行扩容。 final Node<K,V>[] resize() { Node<K,V>[] oldTab = table; int oldCap = (old
原创
发布博客 2020.09.19 ·
280 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

HashMap源码剖析(上)HashMap数据结构、扩容方法、putVal方法。源码带注释~~~

HashMap源码剖析(上)对于每一个Java程序员来说,HashMap你一定不陌生,作为经典面试题,从HashMap上可以考察的知识点太多了。于是乎希望总结一份HashMap的源码级剖析,来检验自己对于Java知识体系的掌握程度本文主要内容:一、HashMap的数据结构二、HashMap的构造三、元素的添加四、HashMap的扩容五、HashMap的树化六、HashMap的链表化一、HashMap的数据结构大家或多或少都了解过HashMap在JDK1.7之前HashMap的结构是
原创
发布博客 2020.08.25 ·
380 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringBoot-Vue交互JSON数据交互后台数据收到为null问题解决

SpringBoot-Vue交互JSON数据交互后台数据收到为null问题解决在做练习项目时遇到了一个让人郁闷的问题:后台使用@RequestBody竟然收不到JSON数据后台使用Swagger测试正常前台使用console.log()测试数据也可以获得于是乎就非常郁闷了,在掉了亿根头发之后终于发现了问题所在//post请求的参数信息,data为传送json数据格式data: { TeacherQuery} 没错这里能有什么问题呢?看浏览器中NetW
原创
发布博客 2020.08.19 ·
1886 阅读 ·
2 点赞 ·
0 评论 ·
1 收藏

计算机网络-码分多路复用技术(清晰至极!)

引子:CDMA是个很重要的通信概念,很多的大学教科书上都会提到它,甚至我们今天可能都在使用它。然而提到cdma,很少有资料提到它的思想是多么的有创意,教科书上关于cdma的章节都过于复杂,过于数学化,虽然也有一些简便的描述方式,但是却几乎没有资料揭示cdma是多么的简单,实际上它比其他很多的概念都要更简单。如果仅仅希望理解诸如cdma的概念而不得不去学习一大堆数学是很悲哀的事情! 如果最终你费了九牛二虎之力把数学推理过程搞明白了,你对数学本身的理解将超过你对cdma的理解,本来数学仅仅是为了帮忙理解cd
转载
发布博客 2020.08.12 ·
3366 阅读 ·
17 点赞 ·
3 评论 ·
17 收藏

JVM-垃圾收集器与内存分配策略(垃圾回收算法、垃圾回收器、内存分配与回收)

JVM垃圾收集器与内存分配策略文章目录JVM垃圾收集器与内存分配策略一、哪些内存需要回收1、引用计数法2、根搜索算法3、什么是引用4、对象的标记5、回收方法区二、垃圾回收算法1、标记清除算法2、复制算法3、标记整理算法4、分代收集算法三、垃圾收集器1、Serial收集器2、ParNew收集器3、Parallel Scavenge收集器4、Serial Old收集器5、Parallel Old收集器6、CMS收集器7、G1收集器四、内存分配和回收策略1、对象优先在Eden分配2、大对象直接进入老年代3、长期
原创
发布博客 2020.08.11 ·
667 阅读 ·
0 点赞 ·
2 评论 ·
1 收藏

数据结构-优先队列(最大优先队列、最小优先队列、索引优先队列)Java实现

数据结构-优先队列(最大优先队列、最小优先队列、索引优先队列)由于队列先进先出的特性,无法灵活按照优先级进行数据的获取。但是在应用中又有此类需求,例如计算机按照优先级进行的任务调度。所以需要对于队列进行改进,以满足此类需求使用堆的数据结构,可以很方便的获取当前等待队列中的最大值或最小值,所以对于优先队列可以采用堆的方式完成一、最大优先队列每次都获取队列中的最大值参考代码package priority;/** * 实现最大优先队列 * <T extend Comparable&g
原创
发布博客 2020.08.09 ·
565 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

数据结构复习之AVL树(AVL树的概念、左旋、右旋操作保证平衡)Java实现

数据结构复习之AVL树(AVL树的概念、左旋、右旋操作保证平衡)文章目录数据结构复习之AVL树(AVL树的概念、左旋、右旋操作保证平衡)一、平衡查找二叉树二、如何旋转三、参考代码一、平衡查找二叉树由于二叉查找树在某些极端情况下可能会形成一个链表,使其性能大大降低,故AVL树作为对其的一种改进AVL改进的方式,数据的插入仍然遵循二叉查找树的特性,但是需要在元素插入时候保证其左右子树的高度之差<=1,如果不满足,则需要通过旋转来保证树的平衡性二、如何旋转对于元素插入导致AVL树失衡的情况有四种
原创
发布博客 2020.08.07 ·
648 阅读 ·
0 点赞 ·
5 评论 ·
0 收藏
加载更多