- 博客(33)
- 收藏
- 关注
原创 InnoDB是如何存储数据的?
InnoDB通过表空间,页和行的结构化方式存储数据,将数据保存在磁盘上的数据文件中,采用聚簇索引来组织数据行,支持事务,外键和行级锁定,从而实现高效的数据检索和管理。
2025-11-26 21:52:51
234
原创 MyISAM与InnoDB有什么区别?如何选择?
MyISAM不支持事物和外键,适合读多写少的场景;InnoDB支持事物,外键和行级锁定,适合高并发写操作。选择时根据应用需求决定:需要事务和高并发写入时选InnoDB,读多写少时可选MyISAM.
2025-11-26 21:49:52
392
原创 Mysql的存储引擎有哪些?它们之间有什么区别?默认使用哪个?
MYSQL的存储引擎主要包括InnoDB,MyISAM,Memory,CSV,Archive等。InnoDB支持事务,外键和行级锁定,适合高并发写操作;MyISAM不支持事务和外键,但查询速度快,适合读多写少的场景;Memory使用内存存储数据;速度快但数据易丢失;CSV和Archive适合存储大批量数据。MySQL默认使用InnoDB.
2025-11-26 21:48:08
288
原创 springboot项目编写测试类,乱码问题解决
Spring 的 CharacterEncodingFilter 默认只对 POST 请求生效,对 GET 请求无效。MockMvc 默认使用 ISO-8859-1 解码响应,而服务端实际返回 UTF-8 编码数据。在test的resources中添加application.properties配置文件,添加配置。Postman 无乱码是因浏览器自动识别编码,但 MockMvc 需显式配置。在测试代码中强制覆盖编码设置。测试环境需手动强制覆盖编码设置。MockMvc 的默认行为。
2025-07-09 16:25:15
248
原创 java的基本类型和引用类型介绍
基本类型是指变量存储的值就是需要的数据,也就是内存地址中直接存储的就是所需要的数据值,引用类型就是指变量存储的不是所需的具体数值,而是另一块内存的地址,具体的数据就是存在该内存空间中的。顺序执行代码是编程语言最基本的功能,循环有多种方式,比如while,for,do-while等,但整体的原理基本都是,在循环结束需要判断条件时,进行条件的判断,如果条件成立,则直接跳转到循环开始的位置,switch也是同样的道理,记录每个分支的位置,满足条件,则直接跳转到该位置执行代码。而堆中存储的是连续的数据。
2025-06-29 15:37:02
298
原创 跨域问题说明
跨域由于浏览器的同源策略造成的。同源策略是指,通过浏览器脚本发起一次请求(如AJax),这次请求的URL与当前的URL的协议,域名和端口必须相同,如果有一个不相同,则构成跨域。注意点:1.非浏览器环境无跨域。2.跨域针对的是浏览器脚本发起的请求,如地址栏直接输入URL,是不会构成跨域的。3.跨域是指一次请求,判断该次请求和当前页面URL的协议,域名和端口。
2025-06-22 22:34:54
463
原创 gcc升级问题
gcc是GNU项目开源的编译器套件,最初仅支持C语言linux中的默认标准编译器,后扩展为支持C++、Fortran、Ada、Go等十多种编程语言。它在Linux中是,负责将源代码转换为可执行文件,涵盖预处理、编译、汇编、链接等步骤已安装最新版本的gcc,为什么程序运行时还是提示“库版本过低”通过gcc -v 确认编译器版本是符合文档要求,但是运行时还是显示libstdc++.so6版本太低原因如下:1.GCC编译器和运行时库(如libstdc++.so.6)是分离的。
2025-06-15 22:59:24
1111
原创 https说明
http是无状态的,https是在http应用层协议和tcp传输控制层之间加了一层,主要功能包括加密传输内容,校验信息是否完整,信息是否被篡改等。http的网络传输,源端应用层发送http请求,传输到源端的控制层,网络层,物理层->到对方的物理层->网络层->传输控制层->应用层,https就是在两边的控制层和应用层之间加了一层SSL/TLS协议层。发送时将http的明文加密,接收时解密,校验是否完整,是否被篡改,在正确无误的明文发送给目标端的应用层,作为http报文。
2025-06-15 22:58:42
1090
原创 redis序列化
1.遇到问题,不能总想着偷懒的方式解决,多思考一步,或许很容易就能找到更合适的方法。2.先将直观的方式和可行的方案都罗列出来,评估选定一个合适的方案。多思考,思考清楚了在动手,而不是动手后发现不行,再思考一下,发现有更简单的方式。
2025-06-15 22:58:05
791
原创 springboot测试类原理
使用trea编写自动测试类,发现不能执行,之前虽然看过测试类相关的内容,但是也只大概知道是怎么样的,对测试类代码和原理等没有很清晰的概念,只记得使用SpringbootTest注解,通过快捷键对每个接口,方法生成测试代码,通过assert断言判断结果是否符合预期,可以写一个类似整体的测试方法, 一点击便会执行所有的测试方式,通过mockMvc模拟一个http请求等。
2025-06-15 22:57:11
990
原创 每日收获总结20250610
一般什么样的人最厉害,经验丰富,遇到过很多问题,解决过很多问题。所以我们应该主动思考,而不是等到遇到困难再思考,像曾国潘那样,看书的时候,这句不读懂,不读下一句,多问自己为什么,多思考答案。许多类会依赖于一个或多个底层资源,如果我们在该类中直接new 一个依赖的底层资源类,那么它们就是强耦合的关系,如果依赖的资源类需要修改,则必须要修改该类的代码。所以,在编程中,我们需要将遇到的任何现象,知识点,技术点弄清晰,思考明白为什么,这样它们才能被清晰的留在我们的脑子里,从而避免看了就忘的问题。
2025-06-10 22:36:00
1224
原创 安装docker,拉取镜像,运行容器,安装DockerCompose
保存镜像:docker save --help docker save -o[保存的目标文件名称] [镜像名称]暂停容器 docker pause 恢复:docker unpause。停止容器 docker stop 恢复:docker start。拉取镜像: docker pull nginx。查看所有运行的容器及状态 docker ps。查看容器运行的日志 docker logs。查看镜像: docker images。运行容器 docker run。删除容器 docker rm。
2025-03-06 22:00:09
526
原创 springboot 程序启动消费者设置偏移量为最新
springboot 使用spring-kafka 启动消费者时设置偏移量为最新-在springboot中自定义kafka偏移量提交策略
2025-01-17 15:07:54
1269
原创 linux笔记
systemctl enable firewalld 开启重启(默认是开启)systemctl disable NetworkManager 关闭重启。systemctl disable firewalld 关闭重启。systemctl status firewalld 查看状态。systemctl stop firewalld 关闭防火墙。help + ls等。
2025-01-14 22:16:22
127
原创 spring刷题总结
preHandle:在controller控制层执行控制器方法执行之前调用 ,如果返回 false 将跳过处理器、拦截器 postHandle 方法、视图渲染等,直接执行拦截器 afterCompletion 方法。postHandle:处理器执行后,视图渲染前执行,如果处理器抛出异常,将跳过该方法直接执行拦截器 afterCompletion方法。afterCompletion:视图渲染后执行,不管处理器是否抛出异常,该方法都将执行。
2024-12-19 17:50:14
191
原创 通过nacos修改配置信息完成东方通web 授权文件license.dat的修改
通过nacos修改配置信息完成东方通web 授权文件license.dat的修改
2024-12-03 13:49:50
709
原创 nacos相关
springboot默认的监听这个事件的方法会去读取默认的配置文件,解析内容,放入envirementResource对象中。2.配置文件,必须在boostrap.properties或yml,不能是application.yml中配置nacos配置中心的地址。写一个监听器,同样监听此事件,然后读取自定义的配置文件,解析后,加入到envirementResource对象中。拿到容器中envirement中的配置值,进行对比和修改。可以实现自定义配置文件,让springboot读取配置文件,加入到容器中。
2024-11-23 17:56:38
241
原创 es入门知识总结
将文档中的关键字进行拆分出来,并记录文档与这些关键字的关联关系,并对这些关键字建立索引。请求体:{"name":"chao2","age":"14","sex":"真男"}请求体,{"name":"chao","age":"18","sex":"男"}delete请求:localhost:9200/test/_doc/1001。put请求:localhost:9200/test/_doc/1001。get 请求:localhost:9200/test。请求体:{"doc":{"age":"12"}}
2024-04-07 17:19:52
530
原创 jvm调优工具命令使用:
jmap -dump:live,format=b,file=aa.dump +pid dump出来的问题可以放到jvisualvm工具中导入查看。top -p 进程id,查看进程详细信息,按 H(shift+h),查看线程占用cpu情况,jmap -histo +pid :查看当前堆中的对象大小及占比信息,后面可。jmap -heap +pid :查看堆内存空间大小分配和空间占用大小。jstack +pid 如系统中有死锁情况,可查看死锁信息。s0u: s0区域使用的空间 s1u:s1使用的空间。
2024-03-23 17:45:36
251
原创 排序算法总结
如果我们假设随机排列,即所有元素都是不同的,并且元素的每个排列均具有相同的可能性,则可以分析预期的交换次数。从无序的数中选择一个数到有序的数中,从有序数中从大到小比较,大于该数的数都向后移动一个位置,直到不大于这个数停止,当前位置则是该数的位置。优化点3:每轮冒泡时,最后一次交换索引可以作为下一轮冒泡的比较次数,如果这个值为零,表示整个数组有序,直接退出外层循环即可。j 指针负责从右向左找比基准点小的元素,i 指针负责从左向右找比基准点大的元素,一旦找到二者交换,直至 i,j 相交。1),n 为数组长度。
2024-01-17 18:16:19
1928
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅