
java面试题
文章平均质量分 90
1
九离⠂
月亮很亮,亮也没用,没用也亮
展开
-
AQS详解
AQS的全称是AbStractQueueSynchronizer,翻译过来的意思就是抽象队列同步器。这个类在java.util.concurrent.locks包下边。AQS就是一个抽象类,主要用来构建锁和同步器。}.}.}原创 2022-10-21 18:12:14 · 927 阅读 · 0 评论 -
Java基础知识之Integer和Int的区别
而java API中对Integer类型的valueOf的定义如下,对于-128到127之间的数,会进行缓存,Integer i = 127时,会将127这个Integer对象进行缓存,下次再写Integer j = 127时,就会直接从缓存中取,就不会new了。Integer变量和int变量比较时,只要两个变量的值是向等的,则结果为true(因为包装类Integer和基本数据类型int比较时,java会自动拆包装为int,然后进行比较,实际上就变为两个int变量的比较)原创 2022-08-22 16:44:02 · 360 阅读 · 0 评论 -
Spring Boot面试必问:启动流程(自动装配)
Spring Boot 自动装配原创 2022-07-18 09:59:37 · 1254 阅读 · 1 评论 -
面试详解之Java8为什么用红黑树来实现HashMap
面试详解之Java8之后使用红黑树来实现HashMap原创 2022-06-01 10:06:20 · 2818 阅读 · 0 评论 -
Elasticsearch面试专题总结
Elasticsearch面试专题总结文章目录Elasticsearch面试专题总结1、Elasticsearch是什么?2、Elasticsearch特点是什么?3、Elasticsearch优缺点?4、Elasticsearch了解多少,说说你们公司ES的集群架构,索引数据大小,分片有多少,以及一些调优手段 。5、Elasticsearch的倒排索引是什么?6、Elasticsearch索引数据多了怎么办,如何调优,部署?7、Elasticsearch是如何实现master选举的?8、详细描述一下El原创 2022-04-15 10:40:46 · 411 阅读 · 0 评论 -
面试必备之数据库专题
面试必备之数据库专题文章目录面试必备之数据库专题请简洁描述 MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?在 MySQL 中 ENUM 的用法是什么?CHAR 和 VARCHAR 的区别?列的字符串类型可以是什么?MySQL 中使用什么存储引擎?TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 数据类型上做什么?主键和候选键有什么区别?MySQL 数据库服务器性能分析的方法命令有哪些?LIKE 和 REGEXP 操作有什么区别?BLOB 和 TEXT原创 2022-04-13 15:42:58 · 541 阅读 · 0 评论 -
面试必备之中间件专题
面试必备之中间件专题文章目录面试必备之中间件专题1. activemq 的几种通信方式publish(发布)-subscribe(订阅)(发布-订阅方式)p2p(point-to-point)(点对点)2.activemq 如果数据提交不成功怎么办(消息丢失)2.1 publish(发布)-subscribe(订阅)方式的处理2.2 p - p(点对点)方式的处理3.如何解决消息重复问题4.大量的消息每页被消费,能否避免发生 oom 异常?5.activeMQ 发送消息的方式有哪些?6. activeMQ原创 2022-04-13 13:59:04 · 182 阅读 · 0 评论 -
面试必备之设计模式专题
面试必备之设计模式专题文章目录面试必备之设计模式专题1.请列举出在 JDK 中几个常用的设计模式?2.什么是设计模式?你是否在你的代码里面使用过任何设计模式?3.Java 中什么叫单例设计模式?请用 Java 写出线程安全的单例模式4.在 Java 中,什么叫观察者设计模式(observer design pattern)?5.使用工厂模式最主要的好处是什么?在哪里使用?6.举一个用 Java 实现的装饰模式(decorator design pattern)?它是作用于对象层次还是类 层次?7.在 Ja原创 2022-04-13 11:10:55 · 116 阅读 · 0 评论 -
面试必备之乐观锁和悲观锁
面试必备之乐观锁和悲观锁文章目录面试必备之乐观锁和悲观锁何谓悲观锁与乐观锁悲观锁乐观锁两种锁的使用场景乐观锁常见的两种实现方式乐观锁的缺点ABA 问题循环时间长开销大只能保证一个共享变量的原子操作CAS 与 synchronized 的使用情景何谓悲观锁与乐观锁乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展。这两种人各有优缺点,不能不以 场景而定说一种人好于另外一种人。悲观锁总是假设最坏的情况,每次去拿数据的时候都认为别人会修改原创 2022-04-13 11:05:26 · 139 阅读 · 0 评论 -
常见面试题总结
常见面试题总结文章目录常见面试题总结1)现在有 T1、T2、T3 三个线程,你怎样保证 T2 在 T1 执行完后执行,T3 在 T2 执行完后执 行?2)在 Java 中 Lock 接口比 synchronized 块的优势是什么?你需要实现一个高效的缓存,它允 许多个用户读,但只允许一个用户写,以此来保持它的完整性,你会怎样去实现它?3)在 java 中 wait 和 sleep 方法的不同?4)用 Java 实现阻塞队列。5)用 Java 写代码来解决生产者——消费者问题。6)用 Java 编程一个会原创 2022-04-11 16:00:05 · 109 阅读 · 0 评论 -
ZooKeeper面试专题总结
ZooKeeper面试专题总结文章目录ZooKeeper面试专题总结1.ZooKeeper 是什么?2.ZooKeeper 提供了什么?3.Zookeeper 文件系统4.四种类型的 znode5.Zookeeper 通知机制6.Zookeeper 做了什么?7.zk 的命名服务(文件系统)8.zk 的配置管理(文件系统、通知机制)9.Zookeeper 集群管理(文件系统、通知机 制)10.Zookeeper 分布式锁(文件系统、通知 机制)11.获取分布式锁的流程12.Zookeeper 队列管理(文原创 2022-04-11 15:24:56 · 186 阅读 · 0 评论 -
Tomcat面试专题总结
Tomcat面试专题总结文章目录Tomcat面试专题总结1、Tomcat 的缺省端口是多少,怎么修改?2、tomcat 有哪几种 Connector 运行模式(优化)?3、Tomcat 有几种部署方式?4、tomcat 容器是如何创建 servlet 类实例?用到了什么原理?5.tomcat 如何优化?6.内存调优7.垃圾回收策略调优8.共享 session 处理9.添加 JMS 远程监控10.专业点的分析工具有11.关于 Tomcat 的 session 数目12.监视 Tomcat 的内存使用情况13原创 2022-04-11 15:09:30 · 230 阅读 · 0 评论 -
Redis面试专题总结(下)
Redis面试专题总结(下)文章目录Redis面试专题总结(下)1、什么是 Redis?简述它的优缺点?2、Redis 与 memcached 相比有哪些优势?3、Redis 支持哪几种数据类型?4、Redis 主要消耗什么物理资源?5、Redis 有哪几种数据淘汰策略?6、Redis 官方为什么不提供 Windows 版本?7、一个字符串类型的值能存储最大容量是多少?8、为什么 Redis 需要把所有数据放到内存中?9、Redis 集群方案应该怎么做?都有哪些方案?10、Redis 集群方案什么情况下会原创 2022-04-11 14:43:29 · 278 阅读 · 0 评论 -
Redis面试专题总结(上)
Redis面试专题总结(上)文章目录Redis面试专题总结(上)redis 和 memcached 什么区别?为什么高并发下有时单线程的 redis 比多线程的 memcached 效率要高?redis 主从复制如何实现的?redis 的集群模式如何实现?redis 的 key 是如何寻址的?使用 redis 如何设计分布式锁?说一下实现思路?使用 zk 可以吗?如何实现?这两种有什么区别?知道 redis 的持久化吗?底层如何实现的?有什么优点缺点?redis 过期策略都有哪些?LRU 算法知道吗?写一原创 2022-04-11 14:27:43 · 281 阅读 · 0 评论 -
RabbitMQ面试专题总结
RabbitMQ面试专题总结文章目录RabbitMQ面试专题总结问题一:RabbitMQ 中的 broker 是指什么?cluster 又是指什么?问题二:什么是元数据?元数据分为哪些类型?包括哪些内容?与 cluster 相关的元数据有哪些?元数据是如何保存的?元数据在 cluster 中是如何分布的?问题三:RAM node 和 disk node 的区别?问题四:RabbitMQ 上的一个 queue 中存放的 message 是否有数量限制?问题五:RabbitMQ 概念里的 channel、ex原创 2022-04-11 14:10:18 · 206 阅读 · 0 评论 -
Nginx面试专题总结
Nginx面试专题总结文章目录Nginx面试专题总结1、请解释一下什么是 Nginx?2、请列举 Nginx 的一些特性。3、请列举 Nginx 和 Apache 之间的不同点4、请解释 Nginx 如何处理 HTTP 请求。5、在 Nginx 中,如何使用未定义的服务器名称来阻止处理请求?6、 使用“反向代理服务器”的优点是什么?7、请列举 Nginx 服务器的最佳用途8、请解释 Nginx 服务器上的 Master 和 Worker 进程分别是什么?9、请解释你如何通过不同于 80 的端口开启 Ngi原创 2022-04-11 14:00:22 · 355 阅读 · 0 评论 -
Netty面试专题总结
Netty面试专题总结文章目录Netty面试专题总结1.BIO、NIO 和 AIO 的区别?2.NIO 的组成?3.Netty 的特点?4.Netty 的线程模型?5.TCP 粘包/拆包的原因及解决方法?6.了解哪几种序列化协议?7.如何选择序列化协议?8.Netty 的零拷贝实现?9.Netty 的高性能表现在哪些方面?10.NIOEventLoopGroup 源码?1.BIO、NIO 和 AIO 的区别? BIO:一个连接一个线程,客户端有连接请求时服务器端就需要启动一个线程进行处理。线 程开原创 2022-04-11 13:50:11 · 171 阅读 · 0 评论 -
MySQL 性能优化的 21 个最佳实践
MySQL 性能优化的 21 个最佳实践文章分类:数据库今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于 Web 应用尤其明显。关于数据库的性能,这并不只是 DBA 才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其 是查表时的 SQL 语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的 SQL 语句的优化,而只是针对 MySQL 这一 Web 应用最多的数据库。希望下面的这些优化技巧对你有用。1. 为查询缓存优化你的查询原创 2022-04-08 00:10:56 · 367 阅读 · 0 评论 -
MySQL基础知识面试题专题汇总
MySQL基础知识面试题专题汇总1.数据库三范式是什么?第一范式(1NF):字段具有原子性,不可再分。(所有关系型数据库系统都满足第一范式数据库表中的字段都是单一属性的,不可再分)第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。要求数据库表中的每个实例或行必须可以被惟一地区分。通常需要为表加上一个列,以存储各个实例的惟一标识。这个惟一属性列被称为主关键字或主键。满足第三范式(3NF)必须先满足第二范式(2NF)。简原创 2022-04-07 13:57:16 · 220 阅读 · 0 评论 -
MySQL面试专题总结(55题汇总)
MySQL面试专题总结(55题汇总)1、一张表,里面有 ID 自增主键,当 insert 了 17 条记录之后,删除了第 15,16,17 条记录, 再把 Mysql 重启,再 insert 一条记录,这条记录的 ID 是 18 还是 15 ?如果表的类型是 MyISAM,那么是 18 因为 MyISAM 表会把自增主键的最大 ID 记录到数据文件里,重启 MySQL 自增主键的最大 ID 也不会丢失如果表的类型是 InnoDB,那么是 15 InnoDB 表只是把自增主键的最大 ID 记录原创 2022-04-07 12:00:07 · 442 阅读 · 0 评论 -
MyBatis面试专题总结
MyBatis面试专题总结1、什么是 MyBatis?答:MyBatis 是一个可以自定义 SQL、存储过程和高级映射的持久层框架。2、讲下 MyBatis 的缓存答:MyBatis 的缓存分为一级缓存和二级缓存,一级缓存放在 session 里面,默认就有,二级缓存放在它的命名空间里,默认是不打开的,使用二级缓存属性类需要实现 Serializable 序列化接口(可用来保存对象的状态),可在它的映射文件中配置3、Mybatis 是如何进行分页的?分页插件的原理是什么?答:1)原创 2022-04-07 11:46:00 · 280 阅读 · 0 评论 -
MongoDB面试专题总结
MongoDB面试专题总结1. 你说的 NoSQL 数据库是什么意思?NoSQL 与 RDBMS 直接有什么区别?为什么要使用和不使用 NoSQL 数据库?说一说 NoSQL 数据库的几个优点?NoSQL 是非关系型数据库,NoSQL = Not Only SQL。关系型数据库采用的结构化的数据,NoSQL 采用的是键值对的方式存储数据。在处理非结构化/半结构化的大数据时;在水平方向上进行扩展时;随时应对动态增加的数据项时可以优 先考虑使用 NoSQL 数据库。在考虑数据库的成熟度;支持;分析和原创 2022-04-07 11:34:44 · 385 阅读 · 0 评论 -
memcached面试专题总结
memcached面试专题总结memcached 是怎么工作的? Memcached 的神奇来自两阶段哈希(two-stage hash)。Memcached 就像一个巨大的、存储了很多<key,value>对的哈希表。通过 key,可以存储或查询任意的数据。 客户端可以把数据存储在多台 memcached 上。当查询数据时,客户端首先参考节点列表计 算出 key 的哈希值(阶段一哈希),进而选中一个节点;客户端将请求发送给选中的节点,然后 memcached 节点通过一个内部的哈希原创 2022-04-07 11:02:42 · 299 阅读 · 0 评论 -
Linux面试专题总结
Linux面试专题总结1. Linux 中主要有哪几种内核锁? Linux 的同步机制从 2.0 到 2.6 以来不断发展完善。从最初的原子操作,到后来的信号量,从 大内核锁到今天的自旋锁。这些同步机制的发展伴随 Linux 从单处理器到对称多处理器的 过渡; 伴随着从非抢占内核到抢占内核的过度。Linux 的锁机制越来越有效,也越来越复杂。Linux 的内核锁主要是自旋锁和信号量。 自旋锁最多只能被一个可执行线程持有,如果一个执行线程试图请求一个已被争用(已经被持有的自旋锁,那么这个线程原创 2022-04-07 10:49:20 · 181 阅读 · 0 评论 -
Dubbo面试专题总结
Dubbo面试专题总结1. Dubbo 中 zookeeper 做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么?可以通信的,启动 dubbo 时,消费者会从 zk 拉取注册的生产者的地址接口等数据,缓存在本地。每次调用时,按照本 地存储的地址进行调用;注册中心对等集群,任意一台宕机后,将会切换到另一台;注册中心全部宕机后,服务的提供者和消费者仍能通过本 地缓存通讯。服务提供者无状态,任一台 宕机后,不影响使用;服务提供者全部宕机,服务消费者会无法使用,并无 限次重连等待服务者恢复;原创 2022-04-07 10:38:21 · 339 阅读 · 0 评论 -
ActiveMQ面试专题总结
ActiveMQ面试专题总结1.什么是 ActiveMQ?activeMQ 是一种开源的,实现了 JMS1.1 规范的,面向消息(MOM)的中间件,为应用程序提供高效的、 可扩展的、稳定的和安全的企业级消息通信2. ActiveMQ 服务器宕机怎么办?这得从 ActiveMQ 的储存机制说起。在通常的情况下,非持久化消息是存储在内存中的,持久化消息是存 储在文件中的,它们的最大限制在配置文件的节点中配置。但是,在非持久化消息堆积 到一定程度,内存告急的时候,ActiveMQ 会将内存中的非持久原创 2022-04-07 10:37:36 · 187 阅读 · 0 评论 -
Kafka面试专题总结
Kafka面试专题总结1.Kafka 的设计时什么样的呢?Kafka 将消息以 topic 为单位进行归纳将向 Kafka topic 发布消息的程序成为 producers.将预订 topics 并消费消息的程序成为 consumer.Kafka 以集群的方式运行,可以由一个或多个服务组成,每个服务叫做一个 broker.producers 通过网络将消息发送到 Kafka 集群,集群向消费者提供消息2.数据传输的事物定义有哪三种?数据传输的事务定义通常有以下三种级别:最多一次:原创 2022-04-07 10:36:52 · 246 阅读 · 0 评论 -
【java面试】6万字最全Java知识体系梳理,还在找面试题?看这篇就够啦
一、基础1.1JVM1、JVM五大内存区域1、程序计数器(PC),一块较小的内存空间,可以看做当前线程所执行字节码的行号指示器。在JVM规范中,每个线程都有它自己的程序计数器,并且任何时间一个线程都只有一个方法在执行,也就是所谓的当前方法。程序计数器会存储当前线程正在执行的java方法的JVM指令地址;2、java虚拟机栈,线程私有,每个方法在执行的同时都会创建一个栈帧,每个栈帧对应一个被调用的方法,栈帧中用于存储局部变量表、操作数栈、动态链表、方法出口等信息。每一个方法从开始执行到结束都对应一个原创 2022-03-31 00:00:07 · 2705 阅读 · 3 评论 -
最全Spring MVC面试题总结
最全Spring MVC面试题总结一、Spring MVC概述1.1 spring MVC了解Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把模型-视图-控制器分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。1.2 Spring MVC 主要组件(1)前端控制器 DispatcherServlet(不需要程序员开发)作用:接收请求、响应结果,相当于转发器,有了Dispa原创 2022-04-06 15:19:23 · 656 阅读 · 0 评论 -
最全Spring面试题总结
最全Spring面试题总结一、Spring概述1.1 spring简介Spring是一个轻量级Java开发框架,最早有Rod Johnson创建,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题。它是一个分层的JavaSE/JavaEE full-stack(一站式)轻量级开源框架,为开发Java应用程序提供全面的基础架构支持。Spring负责基础架构,因此Java开发者可以专注于应用程序的开发。Spring最根本的使命是解决企业级应用开发的复杂性,即简化Java开发。Spring可原创 2022-04-06 15:07:41 · 272 阅读 · 0 评论 -
Java并发编程最全面试题(三万字推荐)
java并发编程面试题,线程,线程池,同步原创 2022-04-06 13:52:54 · 600 阅读 · 0 评论 -
Java虚拟机(JVM)最全面试题
最全java面试题之JVM面试题总结原创 2022-04-06 10:39:56 · 2435 阅读 · 0 评论