![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试知识篇
文章平均质量分 84
面试八股文
长河落日猿
都是一些个人的Java学习总结,仅供参考,欢迎大家交流讨论。
展开
-
Java经典面试题
Inner join 、left join、right join,优先使用Inner join,如果是left join,左边表结果尽量小,cas算法,内存存有原来的值,CPU去更新一个值,但如果想改的值不再是原来的值,操作就失败,因为很明显,有其它操作先改变了这个值。乐观锁 当前事务修改数据时,其他事务可以修改该数据,但只能有一个事务修改成功,其他都回滚。尽量避免在索引列上使用mysql的内置函数,索引列上使用mysql的内置函数,索引失效。= 或者 < >,not in)时,可能会导致索引失效。原创 2022-11-09 15:21:32 · 344 阅读 · 0 评论 -
MySQL底层知识总结
对于 select count(id) from user;这个查询来说,InnoDB 引擎会遍历整个主键索引,然后读取 id 并返回,不过因为 id 是主键,就在 B+ 树的叶子节点上,所以这个过程不会涉及到随机 IO(并不需要回表等操作去数据页拿数据),性能也是 OK 的。对于 select count(username) from user;这个查询来说,InnoDB 引擎会。原创 2022-11-02 17:13:53 · 4339 阅读 · 6 评论 -
SpringMVC工作流程
加依赖 spring-webmvc和javax.servlet-jsp,jsp-api。原创 2022-11-02 16:47:13 · 156 阅读 · 0 评论 -
Java基本数据类型数据溢出底层原理:原码、反码、补码
计算器底层使用二机制 补码 进行运算正数的原码 = 反码= 补码负数的反码是原码 第一符号位数 不变 其他位数取反负数的补码是负数的反码+1一个字节占8位,不足补0,其中第一位表示正负符号,0表示正数,1表示负数例如 int类型占4个字节,所以有48位二进制,8是 1000,不足48位补0, 原码为 00000000 00000000 00000000 00001000 是正数 补码=原码 =反码-8是 原码10000000 00000000 00000000 00001000 是负原创 2022-02-26 18:29:49 · 1127 阅读 · 0 评论 -
gc垃圾回收机制
一、jvm 内存划分1.编写的java代码是存在硬盘中 硬盘中的数据是永久保存的 运行的java程序会在内存中开辟空间jvm将内存划分为五块 便于对数据的管理 以及对内存的优化(房子 厨房 客厅 卧室)2.jvm内存划分A. 栈内存 所有的局部变量 以及方法在运行的时候都会在栈内存中开辟空间特点:先进后出 压栈与弹栈B.堆内存 所有new 的资源 数组 对象都是在存在堆内存中C.方法区 所有的字节码文件 class文件 以及静态资源都是存在方法区例如:public static native原创 2022-03-23 20:56:13 · 2502 阅读 · 0 评论