星星博客 »  > 

最新出炉!java初级面试一般问什么

前言

Spring Data JPA 是在 JPA 规范的基础上进行进一步封装的产物,和之前的 JDBC、slf4j 这些一样,只定义了一系列的接口。具体在使用的过程中,一般接入的是 Hibernate 的实现,那么具体的 Spring Data JPA 可以看做是一个面向对象的 ORM。虽然后端实现是 Hibernate,但是实际配置和使用比 Hibernate 简单不少,可以快速上手。如果业务不太复杂,个人觉得是要比 Mybatis 更简单好用。

本文就简单列一下具体的知识点,详细的用法可以见参考文献中的博客。本文具体会涉及到 JPA 的一般用法、事务以及对应 Hibernate 需要掌握的点。

image.png

一面:

先是问了问项目,然后就开始问一些问题

1、每个请求耗时100ms,机器的配置是4核8G,问要达到10000TPS需要多少台机器?

没答上来,问了问是IO密集型还是CPU密集型,然后面试官说我想得太复杂了

2、怎么实现网页的自动跳转

答301 302的Location字段,然后又问了我这两个有什么区别

3、有一个10G大小的文件,里面都是32位的无符号整数,但是内存大小只有1G,问如何找出里面重复的数字

一开始说用hash,先hash到小文件。面试官说有没有更简单的,答位图,又问你觉得位图会占用多大的内存空间。算了一会,答512M

然后就是算法题,一个Unix的路径,简化这个路径,Leetcode上有原题

一面大概36分钟

二面:

围绕项目问了很多问题,和我讨论了怎么保证双写的一致性、消息队列中消息积压了怎么办、为什么要用到分布式锁、ZK的分布式锁的使用流程、ZK的选主策略、同步策略然后又围绕Kafka问了一些问题。

1、Kafka怎么保证顺序消费?

2、Kafka的架构是什么样的?

3、Kafka可以保证一个主题所有的分区都顺序消费吗?

算法,给一个数n,求所有和等于这个数的连续子序列,比如15=1+2+3+4+5=4+5+6=8+7,所以输出3.

三面:

主要是围绕着基础的知识问了一些问题:

1、Java的GC

2、反射,反射是怎么实现的。

没看过是怎么实现的,现场猜想了一下,应该答错了

3、讲一下乐观锁和悲观锁

4、网络协议的分层,每一层是干嘛用的

5、DNS是哪一层的,域名解析的过程是什么样的?

6、进程间通信的方式,什么情况下需要进程间通信?

这个题答得也不太好,讲了管道、信号、共享内存区域

7、volatile关键字

8、Synchronized和Lock

这个地方我是想等他来问我底层的原理,所以说的时候没说完。不过说完他也没反馈,也许知道什么就应该全部说出来?

做一道算法题,序列化和反序列化二叉树

9、内核态和用户态介绍一下

最后面试官和我聊了聊平时是怎么学习的,最近学什么东西比较有心得,以后的职业规划是什么。

最后

看完上述知识点如果你深感Java基础不够扎实,或者刷题刷的不够、知识不全面

小编专门为你量身定制了一套<Java一线大厂高岗面试题解析合集:JAVA基础-中级-高级面试+SSM框架+分布式+性能调优+微服务+并发编程+网络+设计模式+数据结构与算法>

image

针对知识面不够,也莫慌!还有一整套的<Java核心进阶手册>,可以瞬间查漏补缺

image

全都是一丢一丢的收集整理纯手打出来的——收整在***【我的学习笔记大全】***,有需要的朋友可以自取

更有纯手绘的各大知识体系大纲,可供梳理:Java筑基、MySQL、Redis、并发编程、Spring、分布式高性能架构知识、微服务架构知识、开源框架知识点等等的xmind手绘图~

image

程、Spring、分布式高性能架构知识、微服务架构知识、开源框架知识点等等的xmind手绘图~

[外链图片转存中…(img-YWhRPYHP-1621427600377)]

image

相关文章