- 博客(23)
- 收藏
- 关注
原创 理解IO模型:从BIO到NIO,再到IO多路复用
在现代操作系统中,外部设备和程序之间的交互需要经过两个重要的阶段:内核空间和用户空间。I/O(输入/输出)操作就是内核态与用户态数据交互的途径。不同的I/O模型影响着程序如何处理这些数据交互,进而影响到程序的性能和并发能力。
2025-02-08 12:06:04
668
原创 JVM内存结构
栈的内存可以是固定大小也可以通过指令(-Xss256k)进行扩展,一般情况栈的内存足够java程序正常调用(随调用入栈,随结束出栈),但如果出现了无线循环的调用时会导致栈中被压入太多栈帧而占用全部栈内存空间甚至超出栈空间,使得java抛出。方法区类似于Java中的接口,《Java虚拟机规范》中规定方法区的概念和它的作用,具体的虚拟机中的方法区实现可能会不相同。Java虚拟机栈与程序计数器一样,java虚拟机栈都属于线程私有的内存,栈的生命周期也是随线程的创建而创建,随线程的结束而死亡。
2024-12-02 00:10:13
659
原创 不同的二叉搜索树(II)题解
动态规划是常见的算法思路,动态规划在计算过程中保存了部分计算结果到内存中,以便于在进行下一次计算时可以直接从内存中获取到而不用再进行计算,可以降低时间复杂度。动态规划也一直都是一个比较难以形成思路的算法思想。这篇文章虽然是一个简单题,但是记录了动态规划算法的解题思路,方便形成一个固定的解题思路。
2024-05-26 15:26:02
753
原创 入门动态规划的三个步骤
动态规划是常见的算法思路,动态规划在计算过程中保存了部分计算结果到内存中,以便于在进行下一次计算时可以直接从内存中获取到而不用再进行计算,可以降低时间复杂度。动态规划也一直都是一个比较难以形成思路的算法思想。这篇文章虽然是一个简单题,但是记录了动态规划算法的解题思路,方便形成一个固定的解题思路。
2024-04-15 13:31:08
1027
1
原创 Spring Cloud(六)--分布式链路追踪
微服务框架中的简单用法。micrometer官网|https://docs.micrometer.io/micrometer/reference/installing.html链路追踪是分布式系统下的一个概念,它的目的就是要解决上面所提出的问题,也就是将一次分布式请求还原成调用链路,将一次分布式请求的调用情况集中展示,比如,各个服务节点上的耗时、请求具体到达哪台机器上、每个服务节点的请求状态等等。它主要的作用如下:1、自动采取数据。
2024-04-06 00:32:14
848
1
原创 Spring Cloud(四)--CircuitBreaker服务熔断器
OpenFeign中是微服务与客户端之间建立连接的时间OpenFeign中是从客户端请求微服务到返回响应的时间resilience4j中也是从客户端请求微服务到返回响应的时间第2点与第3点没有太多的区别,但是谁数值小谁先生效。
2024-03-28 19:15:57
1315
原创 两个有序数组的中位数求解
来了来了他终于带着算法题的解析来了!困扰依旧的算法终于被语言文字输出来了!1、当复杂度要求为log时,需要采用二分法递归2、当遇到奇偶情况时,可以采用(n+m+1)/2和(n+m+2)/2这个关系解决3、在遇到此类数组截断的情况时,可以传入起始点和终止点而不用遍历。
2024-03-21 21:08:49
433
1
原创 Mybatis-Plus:持久层数据的高效处理(新手笔记五)--多表查询的实现
上一章将了多表映射的基础:手写SQL。文章发布之后才发现并没有讲完要讲的内容,比如在第一章就出现的映射图。不过还好是新手笔记,想来没有多少人看。这一章将补上这点知识,然后介绍多表映射如何实现。
2024-03-03 20:53:55
888
原创 Mybatis-Plus:持久层数据的高效处理(新手笔记四)--联表查询基础之手写SQL
前面已经将中绝大部分原生API都已经测试完毕。接着上一章结尾提到的,这一章将学习手写的SQL语句。在学习手写SQL之前,需要介绍一下mapper.xml中的表映射如何编写,因为手写SQL是属于mybatis的内容,而mybatis的映射关系是需要自己手写的。当然在此之前,需要你有一定的SQL基础。在前面我们仅仅学习了SQL的单表查询,而想要实现基于的连表查询则需要自己手写SQL实现,这也是为什么要学习手写SQL的原因。
2024-03-01 15:49:38
1097
1
原创 Mybatis-Plus:持久层数据的高效处理(新手笔记三)--条件查询与分页查询
上一章介绍了常用的API并对其进行了测试。这一章主要的任务是介绍一下前面忘记介绍的mybatis生成的实体类,以级两种高级查询方式:条件查询以及分页查询。这两个高级查询语句都不需要单独编写SQL语句,而是框架自动调用生成SQL语句,从而提高生产效率。这个地方只在第一章涉及到,但没有细讲。后面仔细考虑一下还是决定讲一下这个插件的使用。在下面的界面中,可以指定数据表的信息与实体类的一些关系,如和可以去掉表中的前缀和后缀,比如该处的表名为user_info就可以忽略掉后面的_info从而生成User实体类。
2024-02-26 22:03:10
917
1
原创 Mybatis-Plus: 持久层数据的高效处理(新手笔记二)-常用API的测试
上一章快速入门使用了MybatisX生成java代码并初次体验了mapper组件,这一章原本打算介绍一下如何编写自定义sql语句。但为了更清楚的知道MybatisX生成的代码的含义,这一章首先介绍MybatisX生成的代码。本章内容主要介绍了常用的API并进行了测试,下一章继续mapper层的介绍条件查询和分页查询以及service层的条件查询和lambda函数作为条件的查询语句。
2024-02-20 16:48:22
1605
原创 Mybatis-Plus: 持久层数据的高效处理(新手笔记一)--快速入门
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
2024-02-18 22:00:11
345
1
原创 解决VMware安装ubuntu闪退蓝屏问题 超详细!!!
最近的学习需要安装一个liux系统。本来在之前使用过VMware安装ubuntu,心想着没有太多难度,但事实证明直接给我折磨了3个小时!!!!为了方便自己以后出问题以及避免其他小伙伴找不到解决办法,特地在这里写一篇笔记。
2023-07-09 12:27:54
6548
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人