第一部分
JVM
1.jvm的内存模式是什么?
2.什么是GC?
3.对象是怎样被回收的?
4.常用的GC算法有哪些?
5.GC能否手动进行触发
6.如何使用链表实现一个栈?
7.什么是常量池,作用是什么?
8.什么是双亲委派机制?
9.强引用,软引用,弱引用,虚引用分别是什么?
10.队列和栈是什么?有什么区别?
11.请画出jvm的内存模型
12.如何理解基础数据类型还是引用数据类型
13.类的实例化顺序
14.什么是内存溢出?
15.内存溢出的异常有哪些?如何进行解决
第二部分
数据库
- 常用的数据库的函数
- 数据库的游标是什么?视图是什么?
- leftjoin,rightjoin,innerjoin是什么?
- 数据库的索引如何设置
- 数据库的索引有哪些种类?
- 数据库的索引什么时候失效?
- 数据库的inner_buffer_pool是什么?
- 数据库如何实现数据库的回滚操作?
- 数据库设计的三大范式是什么?
- 数据库的表如何进行拆分?好处是什么?分库是什么?
- 数据库的引擎有哪些?
- 如何优化sql?
- 数据库的索引使用的是B+树,为什么不使用二叉树?
- 事务的隔离级别有哪些?
- 高并发的情况下,如何实现安全的修改数据库数据?
- 如果某表的数据超过千万,如何crud时,加快速度?
- MVCC是什么?它的作用是?
- 一条sql语句是如何在MYSQL中执行的?
- 什么是关系型数据库?什么是非关系型数据库?各自的优势是什么?
- 什么是存储过程?
第三部分
锁/IO流
- 什么是重型锁,什么是轻型锁?什么是悲观锁?什么是乐观锁?
- synchronized 与Lock锁的区别是什么?
- CAS锁是什么?
- automic是什么?作用是?
- CAS锁的ABA问题是什么?如何解决?
- 怎样解决多线程的死锁问题?
- 自旋锁是什么?
- 可重入锁是什么?非可重入锁是什么?
- HashTable为什么是安全的?
- CurrentHashMap是怎么实现安全与效率的?
- 什么是IO流,种类有哪些?
12.什么是JAVA序列化?什么是非序列化?
13.BIO,NIO,AIO分别是什么?
14.字节流字符流的区别是什么?
15.什么是多路复用机制?
16.了解过Netty么?
17.有一个文件大小为10G,我们需要读取这个文件,进行入库处理,你怎样来做?
第四部分
框架部分
- springBean的生命周期?
- springIOC与AOP是什么?
- Spring中的循环依赖如何解决?
- Spring中的设计模式有哪些?在哪里应用的?
- Spring的注入方式有哪些?
- Spring中常见的注解的含义是什么?
- SpringAop 的通知模式有哪些?
- Springmvc的执行流程?
- Springmvc的注解有哪些?以及含义
- mybatis如何绑定statement
- mybatis是如何通过反射生成执行语句?
- mybatis的自定义映射如何实现?
- mybatis的一对一,一对多映射如何实现?
- mybatis的缓存是什么?什么时候生效,什么时候失效?
- mybatis的动态sql有哪些?
- 什么是jpa?与mybatis的区别是什么?
- pagehelp分页组件是如何生效的?
- Springboot的自动装配原理是什么?
- Springboot的注解有哪些?配置方式有哪些?加载顺序是什么?
- Springboot与Spring的区别是什么?