常见JAVA面试题
文章平均质量分 83
面试必背,亲自实践过,保证拿到offer!
91科技
“你们现在开始一点也不晚,而现在已经发生的事情根本就什么都不算”--凯文凯勒
展开
-
java面试题——2-5年java后端开发常见面试题(六)
序号 链接地址 1 java面试题:Redis常见面试题(实际面试有被问到) 2 java面试题:Spring核心面试题(必须理解背诵) 3 java面试题:集合常见面试题 4 java面试题:MQ、RabbitMQ面试题(面试必问,精华版) 5 java面试题:Mysql常见面试题 6 java面试题:线程、线程池、锁常见的15道面试题 7 java面试题:jvm常见的5道面试题 8 java面试题:自定义注解常见面试题原创 2022-05-31 14:40:18 · 2090 阅读 · 0 评论 -
JAVA面试常见问题记录(2-5年经验)
你认为你JAVA开发中遇到的比较难的问题是什么?分布式事务TCC怎么实现的?单点登录是怎么搞的?sychoronized是怎么实现的?线程池常用参数是什么?为什么要分库分表,使用场景是什么?...原创 2022-05-21 10:53:24 · 2906 阅读 · 0 评论 -
java面试题——2-5年后端开发常见面试题(四)(实际面试被问到)
目录1、string和stringbuffer和stringbuilder的区别2、MyBatis防止SQL注入的方法3、JDK动态代理和CGLIB动态代理的区别?4、动态代理和静态代理的区别5、Spring中的动态代理是通过什么方式实现的?6、Lombok的原理7、spring循环依赖以及解决办法8、spring在哪些情况下无法解决循环依赖问题?9、java中的锁有哪些?10、mysql中的锁有哪些?11、什么是mybatis?mybatis有哪些优缺点?.原创 2022-05-06 13:21:56 · 1616 阅读 · 0 评论 -
java面试题——项目常见面试题(单点登录、购物车)
1、说一下单点登录?SSO 原理(单点登录的过程)(结合示例说明) 当⽤户第⼀次访问淘宝的时候,因为还没有登录,会被引导到认证中⼼进⾏登录。 根据⽤户提供的登录信息,认证系统进⾏身份验证,如果通过,则登录成功,并返回给⽤户⼀个认证的凭据(JWT token)。 当⽤户访问天猫时,就会将这个 JWT token 带上,作为⾃⼰认证的凭据。 应⽤系统接收到请求后会把 JWT token 送到认证中⼼进⾏校验。 如果通过校验,⽤户就可以在不⽤再次登录的情况...原创 2022-05-05 14:47:42 · 6218 阅读 · 1 评论 -
java面试题——单例模式5道常见面试题
1、关于单例模式,谈谈你的了解吧1、单例模式是一种常用的设计模式,单例模式比较简单但包含了关于线程安全、内存模型、类加载机制等一些比较核心的知识点。2、单例模式就是在整个运行时域,一个类只有一个实例对象。3、为什么需要单例模式呢?因为有的类型的实例对象的创建和销毁对资源来说消耗不大,比如string,然而有的类型呢就比较复杂庞大,如果频繁的创建和销毁对象并且这些对象完全是可以复用的话,那么将会造成一些不必要的性能浪费。4、举个例子吧,比如我现在要写一个访问数据库的demo,而创建数据库链接原创 2022-05-04 20:14:37 · 2550 阅读 · 0 评论 -
java面试篇——springboot常见面试题(一)(共两篇)
1. Spring Boot 自动配置原理是什么? 在springboot的启动类中使用了注解@SpringBootApplication注解,里面的@EnableAutoConfiguration注解是自动配置的核心,注解内部使用@Import(AutoConfigurationImportSelector.class)(class文件用来哪些加载配置类)注解来加载配置类,并不是所有的bean都会被加载,在配置类或bean中使用@Condition来加载满足条件的bean。 @Enabl...原创 2022-04-29 10:48:54 · 2689 阅读 · 0 评论 -
JAVA面试——HTTP的常见状态码(实际面试有被问到)
一、1** 开头的状态码(标黄的必须能回答上来)1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。代码说明:100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。三、2**开头的状态码(标黄的必须能回答上来)2xx (成功)表示成功处理了请求的状态代码。代码说明:200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。201原创 2022-04-29 08:05:16 · 1185 阅读 · 0 评论 -
java面试题——常见项目真实面试题(实际面试被问到)
1、项目包含哪些微服务?你负责哪些?登录微服务,注册微服务,搜索微服务,购物车微服务,订单微服务等10来个微服务2、调用第三方接口异常,你是怎么处理的?看下有没超过设置的超时时间,检查网络 如果网络都正常,去看下返回的错误码是什么3、你们是对服务进行常见的容错处理的?熔断、限流、降级4、请求流量最大设置1W,突然来2W请求,多出来的1w怎么处理的?线程池里面的workque排队,,可以让一万个请求都在排队 线程池的拒绝策略,直接拒绝 排队一部分,拒绝一部分5、购物车同步re原创 2022-04-29 07:23:30 · 25674 阅读 · 2 评论 -
java面试题——自定义注解常见面试题
一、注解的作用 注解是一种元数据形式。即注解是属于java的一种数据类型,和类、接口、数组、枚举类似。 注解用来修饰,类、方法、变量、参数、包。 注解不会对所修饰的代码产生直接的影响。二、创建自定义注解基本定义 首先使用 @interface声明注解名称 然后,使用@Retention,@Target等元注解标注注解的生命周期和作用元素@Retention: 表示对它所标记的元素的生命周期(参考的范围看RetentionPolicy枚举类)@Targ...原创 2022-04-28 15:16:55 · 1600 阅读 · 0 评论 -
java面试题——Nacos常见面试题
服务注册与调用入门 为什么要将服务注册到Nacos?(为了更好的查找这些服务) 在Nacos中服务提供者是如何向Nacos注册中心(Registry)续约的?(5秒心跳包) 对于Nacos来讲它是如何判断服务实例的状态?(检测心跳包 ,15,30) 服务消费方是如何调用服务提供方的服务的?(RestTemplate)服务负载均衡设计及实现 @Bean注解的作用?(一般用于配置类内部,描述相关方法,用于告诉spring此方法的返回值要交给spring容器管理...原创 2022-04-27 21:23:52 · 24920 阅读 · 0 评论 -
Java面试篇——SpringBoot常见面试题(二)(共两篇)
目录1、什么是SpringBoot的自动装配和自动配置?2、springboot实现自动配置redis案例:3、springboot的启动流程:4、springboot加载并处理所有的配置类的流程:5、springboot加载配置类的方式:6、springboot自动配置原理:1、什么是SpringBoot的自动装配和自动配置?自动配置:Auto-Configuration,针对的是SpringBoot中的配置类自动装配:Autowire,针对的是Spring...原创 2022-04-24 15:51:53 · 2416 阅读 · 0 评论 -
java面试题:jvm常见的5道面试题
目录1、请你谈谈你对JVM的理解? 1.方法区 2.堆 3.虚拟机栈 4.本地方法栈 5.程序计数器2、jvm的类加载机制?一、jvm类加载机制的5个阶段:二、类加载器3、JDK 中常用的设计模式有哪些?1、单例模式2、静态工厂模式3、抽象エ厂4、原型模式5、适配器模式6、装饰器模式7、外观模式9、代理模式10、迭代器模式11、命令模式1、请你谈谈你对...原创 2022-04-23 21:52:44 · 6418 阅读 · 2 评论 -
java常见面试题——适用于2-5年后端开发面试(一)
1、什么是索引回表,如何避免?关于这个问题,这里以 MySQL InnoDB 来说,先简单介绍下 MySQL InnoDB 的 B+ 树索引。B+ 树索引主要可以分为两种索引,聚集索引和非聚集索引。聚集索引:也就是平常我们说的主键索引,在 B+ 树中叶子节点存的是整行数据。非聚集索引:也叫二级索引那我们应该如何避免回表,因为如果用到了回表,就需要二次查询的过程,效率肯定更慢,很简单,回表是因为要查询的字段在非聚集索引里没有,所以在满足需求的情况下,我们尽量使非聚集索引里有要查询的索引字段原创 2022-04-21 21:44:17 · 3099 阅读 · 0 评论 -
java面试题:线程、线程池、锁常见的15道面试题【面试时必须能说出来】
目录1、创建线程有哪几种方式1.继承Thread类2.实现Runnable接口3.实现Callable接口4.线程池方式2、线程池的七大参数?3、线程池的工作原理?4、ThreadPoolExecutor 有哪些常用的方法?5、说说submit()和 execute两个方法有什么区别?6、shutdownNow() 和 shutdown() 两个方法有什么区别?7、线程池中核心线程数量大小怎么设置?8、线程池为什么需要使用(阻塞)队列?9、线程池为什么要使原创 2022-04-20 22:25:26 · 3414 阅读 · 0 评论 -
java常见面试题——适用于2-5年后端开发面试(二)
1、说一说HashMap的实现原理在JDK8中,HashMap底层是采用“数组+链表+红黑树”来实现的。HashMap是基于哈希算法来确定元素的位置(槽)的,当我们向集合中存入数据时,它会计算传入的Key的哈希值,并利用哈希值取余来确定槽的位置。如果元素发生碰撞,也就是这个槽已经存在其他的元素了,则HashMap会通过链表将这些元素组织起来。如果碰撞进一步加剧,某个链表的长度达到了8,则HashMap会创建红黑树来代替这个链表,从而提高对这个槽中数据的查找的速度。HashMap中,数组的默认初始原创 2022-04-20 12:11:58 · 2183 阅读 · 0 评论 -
java面试题:Mysql常见面试题
1. MySQL 索引使用有哪些注意事项呢?索引哪些情况会失效索引不适合哪些场景索引的一些潜规则2. MySQL 遇到过死锁问题吗,你是如何解决的?3. 日常工作中你是怎么优化SQL的?4. 说说分库与分表的设计分库分表方案:常用的分库分表中间件:分库分表可能遇到的问题5. InnoDB与MyISAM的区别6. 数据库索引的原理,为什么要用 B+树,为什么不用二叉树?7. 聚集索引与非聚集索引的区别8. limit 1000000 加载很慢的话,你是怎么解转载 2022-04-20 09:29:40 · 4544 阅读 · 0 评论 -
java常见面试题——适用于2-5年后端开发面试(三)
1.微服务篇1.1.SpringCloud常见组件有哪些?1.2.Nacos的服务注册表结构是怎样的?1.3.Nacos如何支撑阿里内部数十万服务注册压力?1.4.Nacos如何避免并发读写冲突问题?1.5.Nacos与Eureka的区别有哪些?1.6.Sentinel的限流与Gateway的限流有什么差别?1.7.Sentinel的线程隔离与Hystix的线程隔离有什么差别?2.MQ篇2.1.你们为什么选择了RabbitMQ而不是其它的MQ?2.2.RabbitMQ原创 2022-04-18 21:11:55 · 1706 阅读 · 1 评论 -
java面试题:Elasticsearch面试突击【2022年最新】
1、为什么要使用 Elasticsearch? (或 回答什么是ES?)2、elasticsearch 的倒排索引是什么?3、倒排索引的搜索过程是什么样的?4、elasticsearch 索引数据多了怎么办,如何调优,部署5、elasticsearch 是如何实现 master 选举的6.详细描述一下 Elasticsearch 索引文档的过程7、如何对Elasticsearch 进行性能优化?原创 2022-04-18 13:17:35 · 3176 阅读 · 0 评论 -
java面试题:MQ、RabbitMQ面试题(面试必问,精华版)
1.为什么要引入MQ/RabbitMQ(中间件),直接读写数据库不行吗?1、在分布式系统下中间件具备异步处理,流量削峰等一系列高级功能;2、中间件可以实现生产者和消费者之间的解耦。3、拥有持久化的机制,进程消息,队列中的信息也可以保存下来。4、对于高并发场景下,利用消息队列可以使得同步访问变为串行访问达到一定量的限流,利于数据库的操作。5、可以使用消息队列达到异步下单的效果,后台进行逻辑下单。2、什么是RabbitMQ?RabbitMQ是一款开源的,Erlang编写的,基于.原创 2022-04-17 12:51:39 · 6103 阅读 · 0 评论 -
java面试题:Spring核心面试题(必须理解背诵)
目录1. 谈谈你对Spring的理解?2. 详细讲解一下Spring的核心容器(spring context应用上下文) 模块3. BeanFactory 和 ApplicationContext有什么区别?4. 解释 Spring 支持的几种bean的作用域?5. Spring 框架中的单例 bean是线程安全的吗?6. 解释 Spring 框架中 bean 的生命周期7. Spring 支持的事务管理类型8. Spring事务的实现方式和实现原理9. 事务的ACI..原创 2022-04-15 15:31:08 · 4467 阅读 · 0 评论 -
java面试题:集合常见面试题
集合:集合的框架:* |----Collection接口:单列集合,用来存储一个一个的对象* |----List接口:存储有序的、可重复的数据。 -->“动态”数组* |----ArrayList、LinkedList、Vector** |----Set接口:存储无序的、不可重复的数据* |----HashSet、LinkedHashSet、TreeSet** |--...原创 2022-04-15 13:35:30 · 1949 阅读 · 0 评论 -
java面试题:Redis常见面试题(实际面试有被问到)
Redis面试前重点突击23个常考知识点!原创 2022-04-14 21:52:02 · 4645 阅读 · 1 评论