多线程
- 现在有 T1、T2、T3 三个线程,你怎样保证 T2 在 T1 执行完后执行,T3 在 T2 执行完后执行?
- 在 Java 中 Lock 接口比 synchronized 块的优势是什么?你需要实现一个高效的缓存,它允许多个用户读,但只允许一个用户写,以此来保持它的完整性,你会怎样去实现它?
- 在 java 中 wait 和 sleep 方法的不同?
- 用 Java 实现阻塞队列。
- 用 Java 写代码来解决生产者——消费者问题。
- 用 Java 编程一个会导致死锁的程序,你将怎么解决?
- 什么是原子操作,Java 中的原子操作是什么?
- Java 中的 volatile 关键是什么作用?怎样使用它?在 Java 中它跟 synchronized 方法有什么不同?
- 什么是竞争条件?你怎样发现和解决竞争?
- 你将如何使用 threaddump?你将如何分析 Thread dump?
- 为什么我们调用 start()方法时会执行 run()方法,为什么我们不能直接调用 run()方法?
- Java 中你怎样唤醒一个阻塞的线程?
- 在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别?
- 什么是不可变对象,它对写并发应用有什么帮助?
- 你在多线程环境中遇到的常见的问题是什么?你是怎么解决它的?
数据库
- 请简洁描述 MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?
- CHAR 和 VARCHAR 的区别?
- 列的字符串类型可以是什么?
- MySQL 中使用什么存储引擎?
- TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 数据类型上做什么?
- 主键和候选键有什么区别?
- MySQL 数据库服务器性能分析的方法命令有哪些?
- LIKE 和 REGEXP 操作有什么区别?
- BLOB 和 TEXT 有什么区别?
- 数据库的三范式?
- MySQL 表中允许有多少个 TRIGGERS?
- 什么是通用 SQL 函数?
- MySQL 中有哪几种锁?
- MySQL 数据优化。
- MySQL 的关键字。
- 数据库备份。
- truncate delete drop 的区别。
- Redis 是什么?两句话做一下概括。
- Redis(管道,哈希)。
- Redis 实现原理或机制。
- Redis 有两种类型分区。
- 什么是 MongoDB。
- MongoDB 特点。
- MongoDB 的功能。
- MongoDB 的适用场景。
- Redis、memcache、MongoDB 对比。
- Redis 有什么用?只有了解了它有哪些特性,我们在用的时候才能扬长避短,为我们所用。
- 对 Redis 数据库做下小结。
中间件
- activemq 的几种通信方式
- activemq 如果数据提交不成功怎么办(消息丢失)
- 如何解决消息重复问题
- 大量的消息每页被消费,能否发生 oom 异常?
- activeMQ 发送消息的方式有哪些?
- activeMQ 如何调优
- 什么是死信队列?
- Basic.Reject 的用法是什么?
- 为什么不应该对所有的 message 都使用持久化机制?
- 为什么 heavy RPC 的使用场景下不建议采用 disk node ?
- 向不存在的 exchange 发 publish 消息会发生什么?向不存在的queue 执行 consume 动作会发生什么?
- 什么情况下 producer 不主动创建 queue 是安全的?
- “dead letter”queue 的用途?
- 为什么说保证 message 被可靠持久化的条件是 queue 和 exchange具有 durable 属性,同时 message 具有 persistent 属性才行?
JVM
- 内存模型以及分区,需要详细到每个区放什么。
- 堆里面的分区:Eden,survival (from+ to),老年代,各自的特点。
- 对象创建方法,对象的内存分配,对象的访问定位。
- GC 的两种判定方法:
- SafePoint 是什么
- GC 的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用在什么地方,如果让你优化收集方法,有什么思路?
- GC 收集器有哪些?CMS 收集器与 G1 收集器的特点。
- Minor GC 与 Full GC 分别在什么时候发生?
- 几种常用的内存调试工具:jmap、jstack、jconsole、jhat
- 类加载的几个过程:
- JVM 内存分哪几个区,每个区的作用是什么?
- 如和判断一个对象是否存活?(或者 GC 对象的判定方法)
- 简述 java 垃圾回收机制?
- java 中垃圾收集的方法有哪些?
- java 内存模型
- java 类加载过程?
- 简述 java 类加载机制?
- 类加载器双亲委派模型机制?
- 什么是类加载器,类加载器有哪些?
- 简述 java 内存分配与回收策率以及 Minor GC 和Major GC
spring
- 什么是 Spring 框架?Spring 框架有哪些主要模块?
- Spring的优点有什么?
- 请介绍下spring的事务管理
- 什么是控制反转(IOC)?什么是依赖注入?
- 请解释下 Spring 框架中的 IoC?
- BeanFactory 和 ApplicationContext 有什么区别?
- Spring 有几种配置方式?
- 请解释 Spring Bean 的生命周期?作用域之间有什么区别?
- 什么是 Spring inner beans?
- Spring 框架中的单例 Beans 是线程安全的么?
- 请举例说明如何在 Spring 中注入一个 Java Collection?
- 如何向 Spring Bean 中注入一个 Java.util.Properties
- 请解释自动装配模式的区别?
- 构造方法注入和设值注入有什么区别?
- Spring 框架中有哪些不同类型的事件?
- FileSystemResource 和 ClassPathResource 有何区别?
- Spring 框架中都用到了哪些设计模式?
答案获取方式——关注+私信“666”即可获得详细答案文档:
閱讀更多 rabbit兔兔 的文章