面试知识点

Java/web基础

 

Static,final关键字,抽象类,代码块,Object类的方法,==equels

集合的继承关系及其特性,以及hashMap存取(1.7,1.8),常见IO流对象及使用

反射的知识点

常用设计模式:

多线程方面:

了解并发

创建线程

线程生命周期,

线程中的方法:

(sleep.wait,notify,join,yeild,interrupt,interrupted,isInterrupted)

synchronized用法(静态方法,非静态方法),特点和缺点等

Lock的使用;ReentrantLock,ReentrantReadWriteLock,公平锁,Condition实现等待通知机制,synchronized的区别和比较等

volatile关键字用法,JMM内存模型,happens-before原则,使用场景等

线程池,继承关系,任务类型和区别,核心参数和工作流程策略,几种常见线程池

理解悲观锁,乐观锁,CAS优缺点等,数据库实现乐观锁,Atomic系列

JUC包下countdownlatch,seamphore,cyclicbarrier的使用

Threadlocal,conCurrenthashmap使用

常用阻塞队列及使用,区别等

 

cokkiesession的使用,区别等http/https,servlet,get,post请求

NIO

 

代码考察:二分查找,冒泡排序,递归,死锁,单列,设计模式,集合操作

 

框架:

SpringMVC流程,注解,拦截器的使用,@[email protected]全局异常

Spring IOC/AOP的理解,

Bean的生命周期,作用域

自定义AOP,JDK/cglib代理

Spring事物,隔离级别,传播机制

Spring中多线程@EnableAsync, @Async

Spring定时任务

spring事件(Application Event

Spring中用到设计模式

自定义注解

SpringBoot:使用,理解,一些注解作用等。。。

 

Mybatis

Mybatis的工作流程,mybatis的拦截器机制

#{}${}的用法和区别

mybatis一级缓存二级缓存以及二者区别,二级缓存的策略

 

 

数据库:

优化方案;

索引的基本知识

索引使用场景和索引失效场景,

索引的数据结构:

读写分离,其他。。。

 

 

JVM:

虚拟机的内存区域分类,用处,异常等信息,常见参数(xms,xmx…

内存分配的方式以及如何选择

内存泄漏和内存溢出

对象的访问定位的两种方式(句柄和直接指针两种方式)

对象创建的步骤

判断一个对象是否存活?(或者GC对象的判定方法)

java垃圾回收机制

垃圾收集算法和常用垃圾回收器,GC回收策略(minor gcMajor GC,full gc

类加载机制(类加载器,自定义,什么场景使用)+双亲委派

JDK 1.8之后Perm Space有哪些变动

分布式:

CAP,BASE理论

分布式事物的实现方式(2段,3段,基于最终一致性和TCC补偿)

分布式锁的实现

分布式锁的使用场景

分布式唯一ID生成方案

 

Redis

数据结构,常用API,持久化,分片集群

 

Dubbo+zookeeper/CloudRPCREST

 

其他:mqquartzlinux,docker,其他工作中的问题

数禾:

  1. concurrenthashmap锁机制,什么情况下加锁
  2. hashMao原理,怎么解决hash冲突,为什么是不安全的
  3. springIOC机制讲一下4.springAOP使用场景,你是怎么用的
  4. redis数据结构发布订阅机制,你是用于什么业务场景,为什么要采用
  5. mybatis的xml怎么和dao的方法名称对应起来的

6.rabbitMq,你是用来干啥的,讲讲,路由模式怎么讲消息发送到指定的queue

7.Nginx反向代理和负载均衡如何配置

8dubbo超时机制

10.mysql查询的时候,如果某一列有一个字段是null,那么相对在查询结果集的前面,还是后面?为什么?

12.线程池,有哪几种,几个重要参数说一下

 

诺亚财富:

1.jwt往死里问。

2.hsahMap的原理、hashMap  jdk1.8比jdk1.7有哪些变化,红黑树的算法时间复杂度是多少,链表的时间复杂度是多少?

3.单点登录问题,如果一个用户开启两个浏览器,怎么再第二个浏览器登录的时候,把第一个登出

4.rabbitMq 生产者怎么保证消费者一定消费了消息。

5.给我一个数字,让我在数组里以最快的速度找出一组两个数字的和等于这个数字,并且输出两个数字的下标

6.redis我都用过哪些数据结构,一般都用来放什么,连接用的是jedis。还是redisTemplate

7.分布式事务,一般都有个全局事务id,如果让你自己设计全局事务id,你怎么设计,不借用任何中间件

8jpa,我是用来连mysql的吗,我回答是,他就没问了

9. 分布式任务调度框架

10.git版本管理工具,我们是怎么管理接口的版本的

1.分布式锁不用redisson框架实现,直接用redis怎么实现
2.hashMap数组+链表的链表是怎么排序的?懂底层实现吗
3.concurrentHashMap 什么情况下加锁
4.redis数据结构zset用过吗?用来干啥的
5.悲观锁、乐观锁、乐观锁是怎么实现的,CAS、AQS、ABA是个啥玩意,我不懂
6.mysql索引算法,B+树讲一下,预编译有什么好处,除了防止sql注入还有啥好处;#和$的区别;最左原则讲一下
7.怎么做到百亿级别的数据查询,只需要几毫秒就能返回想要的结果
8.如果有个很大的文件,在并发量几百甚至上千的情况下,都去请求这个文件,你怎么做好快速响应?
9.线程池有哪几种,常用的的那几个参数讲一下,都是什么意义,你常用哪个,我说newFIxed那个,他说使用这个线程池需要注意什么,我没想起来?

10.线程有哪些状态,说一下,run和strat有什么区别

11.如果一个能支撑100并发的现在突然让支持300甚至500并发,又不给你增加机器,你怎么做?
12.kafka有什么不好的地方吗?dubbo+zookeeper有什么不好的地方吗?使用zookeeper做过分布式锁吗?
13.分布式事务用过哪些?跨库事务用过吗?

分享下今天的面试题:说下HashMap,nginx使用那些功能,线程池,ZK有那些功能,选举咋弄的,voliate关键字用法,项目结构图,数据库优化,B数b+树的区别,threadLoal的实现和问题,手写涉及模式,AOP的代理及实现,分布式事物的实现,多路复用,JVM的垃圾收集算法优缺点,五子棋怎么收子,怎么保证线程安全和又发挥多线程的快速作用,Spring Cloud hystrix中信号量和线程池的区别,ribbon的实现原理,CPU满了怎么检查,docker File命令,CAS怎么实现共享数据的分配

redis和数据库的一致性问题
zookeeper底层协议
手写rpc框架
zookeeper选举机制算法
zookpper生产者挂了,消费者怎么办
reids持久化机制
redis主从同步机制
redis如果物理内存快用完了怎么办

分库分表
怎么做两个库的表的关联查询
fullGc发生在哪里
mongo分配的副本

mysql索引会不会用在varchar列上
restful风格怎么理解

Spring中的CacheManager

原文地址:https://www.cnblogs.com/raynnie/p/10653248.html

时间: 2024-08-29 19:59:05

面试知识点的相关文章

Android面试知识点(转)

该文所有问题转自:http://www.cnblogs.com/hpboy/p/3307371.html 一.算法,数据结构 1.排序算法 2.查找算法 3.二叉树 4.广度,深度算法: 二.java基础 1.集合Collection,List,Map等常用方法,特点,关系: 2.线程的同步,中断方式有几种,线程池,线程状态,常用的方法比较,比如wait,sleep等: 3.反射机制 4.IO包的使用,运用了什么设计模式 5.设计模式,常用的设计模式,运用场景: 6.内存管理,引用的种类: 7.

L--前端开发面试知识点(HTML相关)

简介 前端开发面试知识点大纲: HTML&CSS: 对web标准的理解.浏览器内核的差异.兼容性.hack.css基本功:布局.盒子模型.选择器优先级及使用.HTML5.CSS3.移动端适应. javascript: 数据类型.面向对象.继承.闭包.插件.作用域.跨域.原型链.模块化.自定义事件.内存泄露.事件机制.异步装载回调.模板引擎.nodejs.JSON.ajax 其他:HTTP.安全.正则.优化.重构.响应式.移动端.团队协作.可维护.SEO.UED.架构.职业生涯 1.请你谈谈Coo

Java---常用基础面试知识点

综合网上的一点资源,给大家整理了一些Java常用的基础面试知识点,希望能帮助到刚开始学习或正在学习的学员. 1.抽象 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过程抽象,二是数据抽象. 2.继承 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法. 对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继 承了原始类的特性,新

Java 面试知识点解析(二)——高并发编程篇

前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大部分内容参照自这一篇文章,有一些自己补充的,也算是重新学习一下 Java 吧. 前序文章链接: Java 面试知识点解析(一)--基础知识篇 (一)高并发编程基础知识 这里涉及到一些基础的概念,我重新捧起了一下<实战 Java 高并发程序设计>这一本书,感觉到心潮澎湃,这或许就是笔者叙述功底扎实的

关于Java面试知识点解析——JVM基础篇

跳槽时时刻刻都在发生,但是我建议大家跳槽之前,先想清楚为什么要跳槽.切不可跟风,看到同事一个个都走了,自己也盲目的开始面试起来(期间也没有准备充分),到底是因为技术原因(影响自己的发展,偏移自己规划的轨迹),还是钱给少了,不受重视. 准备不充分的面试,完全是浪费时间,更是对自己的不负责(如果title很高,当我没说).今天给大家分享下 Java面试知识点解析--JVM基础篇 1)Java 是如何实现跨平台的? 注意:跨平台的是 Java 程序,而不是 JVM.JVM 是用 C/C++ 开发的,是

【数据库】数据库面试知识点汇总

转自:https://www.cnblogs.com/wenxiaofei/p/9853682.html 数据库面试知识点汇总 一.基本概念 1.主键.外键.超键.候选键 超键:在关系中能唯一标识元组的属性集称为关系模式的超键.一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键.超键包含候选键和主键. 候选键:是最小超键,即没有冗余元素的超键. 主键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合.一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Nul

怎么掌握安卓中高级开发面试知识点?缓存重点都在这!

前言 之前早就说要整理一个集合方便大家,还好没有拖到2020年BATJ.字节跳动面试专题,算法专题,高端技术专题,混合开发专题,java面试专题,Android,Java小知识,到性能优化.线程.View.OpenCV.NDK等已经上传到了的我的GitHub 大家点击我的GitHub地址:https://github.com/Meng997998/AndroidJX点下star一起学习 好了今天就跟着我来,告诉你缓存重点,一起熟练掌握安卓中高级开发面试知识点! 我们都知道,几乎所有的项目都做了缓

面试--知识点2

1.1 JAVA基础 面向对象和面向过程的区别 Java 语言有哪些特点 关于 JVM JDK 和 JRE 最详细通俗的解答 Oracle JDK 和 OpenJDK 的对比 List 和 Set 的区别 什么是 Java 程序的主类 应用程序和小程序的主类有何不同 Java 应用程序与小程序之间有那些差别 字符型常量和字符串常量的区别 Java 面向对象编程三大特性: 封装 继承 多态 构造器 Constructor 是否可被 override Arrays.sort 实现原理和 Collec

前端面试知识点集锦

个人总结的比较全面的前端面试知识点.主要是一些个人认为面试时容易考到以及平时需要注意的一些知识点. 本人只是对这些知识进行了一个大概的总结,还有一部分技术还没开始涉及,后期会持续添加.如果需要进行深入了解可以根据知识点查询相关的技术文章. 本文涵盖了以下各个方面的知识: HTML, CSS, JS基础知识 网站性能优化知识 前端项目自动化构建相关知识 算法相关知识 网络与HTTP协议相关知识 前端的安全相关知识 插件编写相关知识 JS模块化编程相关知识 Github Repo:https://g

Java面试知识点总结(3)

96.阐述Servlet和CGI的区别? 答:Servlet与CGI的区别在于Servlet处于服务器进程中,它通过多线程方式运行其service()方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于Servlet. 补充:Sun Microsystems公司在1996年发布Servlet技术就是为了和CGI进行竞争,Servlet是一个特殊的Java程序,一个基于Java的Web应用通常包含一个或多个Servlet类.S