摘要: 玩转时间操作 在 JDK 8 之前,Java 语言为我们提供了两个类用于操作时间,它们分别是:java.util.Date 和 java.util.Calendar,但在 JDK 8 的时候为了解决旧时间操作类的一些缺陷,提供了几个新的类,用于操作时间和日期,它们分别是:LocalTime、Loca 阅读全文
posted @ 2020-02-07 14:42 洲洋1984 阅读(179) 评论(0) 推荐(0) 编辑
摘要: Java 并发包中的高级同步工具 Java 中的并发包指的是 java.util.concurrent(简称 JUC)包和其子包下的类和接口,它为 Java 的并发提供了各种功能支持,比如: 提供了线程池的创建类 ThreadPoolExecutor、Executors 等; 提供了各种锁,如 Lo 阅读全文
posted @ 2020-02-07 14:41 洲洋1984 阅读(550) 评论(0) 推荐(0) 编辑
摘要: 消息队列面试题汇总 1.消息队列的应用场景有哪些? 答:消息队列的应用场景如下。 应用解耦,比如,用户下单后,订单系统需要通知库存系统,假如库存系统无法访问,则订单减库存将失败,从而导致订单失败。订单系统与库存系统耦合,这个时候如果使用消息队列,可以返回给用户成功,先把消息持久化,等库存系统恢复后, 阅读全文
posted @ 2020-02-07 14:40 洲洋1984 阅读(1315) 评论(0) 推荐(0) 编辑
摘要: Java 中的各种锁和 CAS + 面试题 如果说快速理解多线程有什么捷径的话,那本文介绍的各种锁无疑是其中之一,它不但为我们开发多线程程序提供理论支持,还是面试中经常被问到的核心面试题之一。因此下面就让我们一起深入地学习一下这些锁吧。 乐观锁和悲观锁 悲观锁和乐观锁并不是某个具体的“锁”而是一种并 阅读全文
posted @ 2020-02-07 14:38 洲洋1984 阅读(5192) 评论(0) 推荐(1) 编辑
摘要: Java 分布式框架面试题合集 1.什么是 ZooKeeper? 答:ZooKeeper 是一个开源的分布式应用程序协调服务,是一个典型的分布式数据一致性解决方案。设计目的是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的系统,并以一系列简单易用的原子操作提供给用户使用。 2.Zo 阅读全文
posted @ 2020-02-07 14:36 洲洋1984 阅读(14210) 评论(0) 推荐(0) 编辑
摘要: JVM 面试题汇总 1.什么是 JVM?它有什么作用? 答:JVM 是 Java Virtual Machine(Java 虚拟机)的缩写,顾名思义它是一个虚拟计算机,也是 Java 程序能够实现跨平台的基础。它的作用是加载 Java 程序,把字节码翻译成机器码再交由 CPU 执行的一个虚拟计算器。 阅读全文
posted @ 2020-02-07 14:31 洲洋1984 阅读(1762) 评论(0) 推荐(0) 编辑
摘要: JDK 原生动态代理是怎么实现的 + 面试题 反射 反射机制是 Java 语言提供的一种基础功能,赋予程序在运行时自省(introspect)的能力。简单来说就是通过反射,可以在运行期间获取、检测和调用对象的属性和方法。 反射的使用场景 在现实中反射的使用场景有很多,比如以下几个。 使用场景一 :编 阅读全文
posted @ 2020-02-07 14:28 洲洋1984 阅读(752) 评论(0) 推荐(1) 编辑
摘要: java.io 包下的类有哪些 + 面试题 IO 介绍 IO 是 Input/Output 的缩写,它是基于流模型实现的,比如操作文件时使用输入流和输出流来写入和读取文件等。 IO 分类 传统的 IO,按照流类型我们可以分为: 字符流 字节流 其中,字符流包括 Reader、Writer;字节流包括 阅读全文
posted @ 2020-02-07 14:23 洲洋1984 阅读(901) 评论(0) 推荐(0) 编辑
摘要: Redis 面试题汇总 1.Redis 使用场景有哪些? 答:Redis 使用场景如下: 记录帖子点赞数、点击数、评论数 缓存近期热帖 缓存文章详情信息 记录用户会话信息 2.Redis 有哪些功能? 答:Redis 功能如下: 数据缓存功能 分布式锁的功能 支持数据持久化 支持事务 支持消息队列 阅读全文
posted @ 2020-02-07 14:20 洲洋1984 阅读(629) 评论(0) 推荐(0) 编辑
摘要: MyBatis 介绍 MyBatis 是一款优秀的 ORM(Object Relational Mapping,对象关系映射)框架,它可以通过对象和数据库之间的映射,将程序中的对象自动存储到数据库中。它是 Apache 提供的一个开源项目,之前的名字叫做 iBatis,2010 年迁移到了 Goog 阅读全文
posted @ 2020-02-07 14:15 洲洋1984 阅读(1749) 评论(0) 推荐(0) 编辑