本篇不讲面试题,只做面试题的搬运、过滤和组合。集百家之长,成众人之美,以下都是本人在面试中遇到过的问题,并觉得写得非常好的有代表性的文章,如有侵权,请联系我删除!
面经
- 3年开发经验,网易、滴滴、点我Java岗面试经验汇总,offer已到手
- 2019 滴滴java面试笔试总结 (含面试题解析)
- 滴滴面经(Java实习生)
- https://www.pianshen.com/article/43161117617/
- 2021最新京东Java面试题目,2021大厂面试合集
一.java基础
- 深入理解 hashcode() 和 HashMap 中的hash 算法
- 彻底搞懂hashCode与equals的作用与区别
- 什么是Hash冲突以及解决Hash冲突的办法
- 一致性Hash原理与实现
- ArrayList实现分析(三)——迭代器的实现
- 常见的5种JAVA运行时异常
- String、StringBuffer与StringBuilder之间区别
- b+树图文详解
- 不怕难之BlockingQueue及其实现
- 为什么要使用数据库连接池 、好处是什么
- 解决Hash碰撞冲突方法总结
- Java 异常模型综述
- 深入理解java动态代理的两种实现方式(JDK/Cglib)
- Java对象相等判断
- JAVA中的CAS算法
- jvm G1 深度分析
- Collections.synchronizedMap线程安全的map的实现原理
- TCP为什么是四次挥手,而不是三次?
- BIO与NIO、AIO的区别(这个容易理解)
- ReenTrantLock可重入锁(和synchronized的区别)总结
- ReentrantLock的实现原理及AQS和CAS
- Java并发问题--乐观锁与悲观锁以及乐观锁的一种实现方式-CAS
- finalize() 原理,了解一下?
- Java中CAS详解
- 查看 JVM 参数的默认值
二.多线程
- java中的线程池有哪些,分别有什么作用?
- Runnable与Callable区别
- 面试官:知道ThreadLocal嘛?谈谈你对它的理解?(基于jdk1.8)
- ThreadLocal
- ThreadLocal的应用场景
- ThreadLocal会发生内存泄露吗?如何解决?
- 11000 字梳理多线程 --补充-- java线程池常用参数设置
- 在高并发的情况下如何保证消息的顺序性?
- 线程池之ThreadPoolExecutor使用
- java中的线程池有哪些,分别有什么作用?
- 核心线程,非核心线程的区别你还记得吗?
- 一句话说明白Java线程池中shutdown和shutdownNow的区别
- 四种线程池拒绝策略
- Java8 CompletableFuture 用法全解
- Java8 AbstractExecutorService 和 FutureTask 源码解析
- 并发编程-线程池(二)线程池回收线程
- 线程池参数设置技巧原则
- 线程池中各个参数如何合理设置
三. maven
四 .jvm
- 排查JVM内存泄漏的命令
- JVM监控和调优常用命令工具总结
- JVM的栈上分配与逃逸分析(Escape Analysis)
- YGC和FGC是什么
- 深入探讨Java类加载机制
- JVM性能调优实践——G1 垃圾收集器介绍篇
- JVM的内存区域划分
- 【JVM】Java8 和 Java7中JVM内存模型有什么区别
- Jvm垃圾回收器(终结篇)
- 一篇文章彻底搞懂CMS与G1
五.SpringMVC
- SpringMVC的拦截器和过滤器的区别
- 继承HttpServletRequestWrapper以实现在Filter中修改HttpServletRequest的参数
- Spring过滤器和拦截器的区别
- Tomcat是如何打破双亲委派机制的
六.微服务相关
- 马丁.福勒微服务架构博文译文
- 集群,分布式,微服务概念和区别理解
- eureka和zookeeper的区别
- springcloud和dubbole的区别和解释
- RocketMQ 高可用机制
- RocketMQ-----怎么保证MQ的高可用性
- 微服务架构中的雪崩问题产生原因及解决办法
- 八个常见的微服务性能问题(以及解决方法)
- 微服务落地,我们在考虑什么?
- Zookeeper服务注册与发现原理浅析
- 面试:SOA架构和微服务架构的区别是什么?
六.redis
- 为什么要用Redis?Redis为什么这么快?
- Redis的持久化方式和缓存淘汰策略
- Redis的过期策略和内存淘汰策略
- 50道Redis面试题及答案整理,史上最全!
- redis系列,rdb为什么要这么做?深度剖析
- redis系列,aof持久化,你不知道的一些秘密!深度源码剖析
- redis的相关解析
- redis常见应用场景
- 分布式锁之Redis实现
- 基于Redis实现延时队列服务
- 使用Redis实现延时任务(一)
- Redis 实战篇:巧用数据类型实现亿级数据统计
- Redis的主从数据一致性
- redis(九)常见场景及解决
- 基于Redis的分布式锁和Redlock算法
- 如何正确使用redis分布式锁
- Redis详解(四)------ redis的底层数据结构
七.mysql
- 100道MySQL常见面试题总结
- redis中各种数据类型对应的jedis操作命令
- mysql 四种隔离级别
- MYSQL数据库事务4种隔离级别及7种传播行为
- MySQL常见面试题
- MySQL 最左前缀原则
- 读已提交和可重复读的区别 命令行测试
- mysql面试题《六》覆盖索引与回表
- 再有人问你为什么MySQL用B+树做索引,就把这篇文章发给她
- MySQL索引-B+树(看完你就明白了)
- mysql覆盖索引与回表
- mysql的MVCC(多版本并发控制)1
- mysql的mvcc(多版本并发控制)2
- mysql中#和$的区别
- MySQL锁总结
- MySQL的四种事务隔离级别
- 看完就明白_spring事务的7种传播行为
八.框架
- Spring事务传播行为详解
- mybatis是如何防止SQL注入的
- 深究Spring中Bean的生命周期
- 彻底理解SpringIOC、DI-这篇文章就够了
- 一文说透 Spring 循环依赖问题
- Spring 依赖注入三种方式的实现,及循环依赖问题的解决(源码+XML配置)
- spring aop 及实现方式 Tiffany_弥弥
- c3p0和dbcp的使用和区别
- spring 声明式事务
- 详解 TCP 连接的“ 三次握手 ”与“ 四次挥手 ”