1.自我介绍
2.实习项目 担任角色 模块里面用了什么技术解决了什么问题
3.md5会重复吗 原理了解吗
4.AOP本身的实现原理
5.代理的实现的方式 区别 默认是哪一个
6.redis用来做什么
7.redis数据结构
8.redis除了String的其他数据结构的使用场景 感觉这个说的不太好
9.数据库用的哪一个
10.索引失效
11.可以给性别加索引吗
12.事务了解吗 事务的特性
13.隔离级别有几种 是干什么的
14.每一种支持并发的程度是上升还是下降
15.多版本并发控制 说的很烂。。多看看
16.突然插入题外话 为什么想走开发
17.常用的数据结构
18.栈和队列的区别 有哪些使用场景
19.JVM里面不是有一些栈的应用吗 说一下
20.JVM方法栈
21.B+树
22.相比于平衡二叉树有什么优势
23.HashMap聊一下 扩容红黑树没说
24.可以用跳表优化链表吗 优化hashmap的链表
25.深拷贝和浅拷贝有什么区别
26.学技术栈哪里学的
27.常用的排序算法 熟悉哪一个 插入排序的时间复杂度和空间复杂度
28.假设在海量数据查找特定的数据会怎么做
29.线程和进程有什么区别
30.什么是线程安全
31.怎么保证线程安全
32.除了加synchronized还有什么能保证
33.synchronized和ReentrantLock那个性能好一点
34.锁升级过程
35.ReetrantLock底层用什么实现
36.AQS源码看过吗
37.Unsafe类干什么用的
38.线程状态了解吗 五种状态
39.操作系统的多级缓存
40.算法题 字符串反转 很快写了又出了一个 链表反转和两个链表合并排序选一个
面试官给了一些建议 举一反三
数据结构 算法 应用场景
二面
1.Java面向对象编程的特性,阐述一下
2.String,StringBuilder和StringBuffer的区别 为什么StringBuffer是线程安全的
3.除了synchronized其他线程安全的关键字
4.synchronized和ReetrantLock的区别
5.线程和进程的区别
6.volatile修饰变量有什么好处
7.重载和重写有什么区别 重写在什么关系下建立的
8.final关键字可以给什么修饰
9.Error和Exception的区别
10.自定义异常怎么做
11.try catch finally try中int i = 1 return了 finally i = 4 最后结果是多少
12.用过哪些关系型数据库 隔离级别
13.InnoDB的索引结构 为什么要选择B+树
14.delete drop 和 truncate
15.给表建索引会有哪些考量
16.怎么看sql有没有命中索引
17.用过关于缓存的工具吗
18.redis的常规数据结构
19.redis的哨兵机制听说过吗
20.redis除了做缓存还能做什么
21.分布式情况下怎么保证数据一致性 放在redis里面会导致多线程安全问题
22.有什么方式实现分布式锁
23.为什么redis可以实现分布式锁 redis原子性 同一时间只能被一个线程使用
24.redis是单线程的为什么还快呢 除了内存
25.Bean的生命周期
26.md5加密后可以解密吗 如果不能解密怎么比较密码是否一致 会出现明文不一致密文一样的情况吗
27.说一下文件分块传输
28.怎么提升文件上传效率
29.多线程上传文件怎么平衡线程数量 50个线程一定会比10个线程快吗
30.影响多线程效率的有哪些因素 忽略线程创建销毁切换开销 评估开多少线程要综合哪些因素
31.机器的CPU同时要保证执行的服务和任务还要保证操作系统本身 CPU的线程数和CPU的执行速度
32.Java里面的内存模型和操作系统里面的内存模型有什么区别 是不是没听说过零拷贝(的确没听过)
33.TCP和HTTP分别几次握手和挥手
34.HTTP和HTTPS的区别
35.怎么实现HTTPS这个协议
36.数据结构里面堆栈和队列
37.深度为5的满二叉树中叶子节点的个数
38.列举知道的排序方法以及平均时间复杂度
39.实习项目 文件和图片存在哪 哪家的
40.不同图片尺寸怎么实现
41.储存图片的地址是域名地址 域名如果发生变更图片就失效了 有什么办法可以避免图片不丢失 域名 + path地址拼接
42.接触过dubbo吗
43.接触过微服务吗,那你理解的微服务是什么样的
44.微服务的优势在哪
45.你有什么要问我的吗
能过就好啊啊啊