深圳某小公司一面、二面凉经

一面

1.自我介绍

2.讲一下List、Map、Set区别?

3.List里面有啥?两者的区别?

4.Map里面有啥? HashMap的底层数据结构?

5.String常用的方法 只答出几个,有点忘了,卡壳了

6.定义一个String和new String的区别?

7.进程和线程区别?

8.创建线程的方法有哪些?

9.Spring的特点?AOP干嘛用的?

10.为啥都用Springboot了不用Spring了?将配置转化成什么简化了开发? 答的不好,课后你去了解一下

11.Springboot常见的注解?

12.Innodb和mysaim引擎的区别?

13.说说对索引的了解

14.索引失效的情况? like一定会失效嘛?什么情况会失效,什么情况不会失效?就是想要我说最左匹配原则

15.Redis会吗?除了用做缓存还用啥? 用分布式锁

16.分布式锁会影响性能很多 没考虑这个

17.介绍一下项目吧

18.负责哪一块功能?登录除了JWT还有过期时间嘛?如何设置过期时间? Redis存,扯一下

19.介绍第二个项目,遇到什么困难?怎么解决的?

20.为啥用Nginx?为啥用Docker?

21.反问 我问的比较广,问的还是比较基础的,二面可能就深入很多了

面试官是个小姐姐,不会的地儿还是会引导你,感觉还是不错的,晚上通知一面过了。

二面

1.自我介绍

2.问一下基本情况

3.讲讲你在项目里面负责模块

4.讲讲SpringSecurity执行链

5.讲讲JWT,由哪几个部分构成

6.JWT相比session优势,有session可以不占内存啊,为啥还选JWT? 巴拉一堆,答不出了

7.讲讲Minio

8.讲讲docker,docker作为容器底层原理怎么样的?怎么实现隔离的? 不会。。

9.看看哪些源码讲讲 .........

10.聊天去了

11.给我介绍了五分钟公司

反问,半个小时结束了

两天后,挂了。。。不知道是不是KPI面,麻了

#我的实习求职记录##我的求职思考##牛客在线求职答疑中心#
全部评论
首先,很抱歉听到你的面试没有通过。以下是我对你面试中的问题的回答和一些建议: 1. List、Map、Set的区别: List、Map、Set都是Java中的集合类,它们的区别在于: - List是有序的,可以重复的集合,可以通过索引访问元素; - Set是无序的,不可以重复的集合,不能通过索引访问元素; - Map是一种键值对的集合,每个元素都包含一个键和一个值,可以通过键访问值。 2. String和new String的区别: String是Java中的一个类,它可以用来表示字符串。new String是用来创建一个新的String对象的,它和直接使用String的效果是一样的。 3. 进程和线程的区别: 进程是一个正在执行的程序的实例,它有自己的内存空间和系统资源。线程是进程中的一个执行单元,一个进程可以包含多个线程,它们共享进程的内存空间和系统资源。 4. 创建线程的方法有哪些: Java中创建线程的方法有两种: - 继承Thread类并重写run方法; - 实现Runnable接口并实现run方法。 5. Spring的特点和AOP的作用: Spring是一个开源的Java框架,它的特点包括: - 轻量级:Spring的核心是非常轻量级的,它不需要依赖其他的框架或者容器; - 面向切面编程(AOP):Spring支持AOP,可以将一些通用的功能(如日志、事务等)抽象出来,以切面的方式应用到多个模块中; - 控制反转(IOC):Spring通过IOC容器来管理对象之间的依赖关系,使得对象之间的耦合度降低。 AOP的作用是将一些通用的功能(如日志、事务等)抽象出来,以切面的方式应用到多个模块中,从而避免了代码的重复。 6. 为什么使用SpringBoot而不是Spring: SpringBoot是Spring的一个子项目,它可以帮助开发者快速搭建基于Spring的应用程序。相比于传统的Spring应用程序,SpringBoot具有以下优点: - 简化配置:SpringBoot可以自动配置大部分的应用程序,开发者只需要关注自己的业务逻辑; - 快速开发:SpringBoot提供了很多开箱即用的功能,如内嵌的Tomcat服务器、自动配置的数据源等,可以帮助开发者快速开发应用程序; - 易于部署:SpringBoot可以打包成一个可执行的JAR文件,可以方便地部署到各种环境中。 7. Minio是什么: Minio是一个开源的对象存储服务器,它可以用来存储和管理大量的非结构化数据,如图片、视频、文档等。 8. Docker的底层原理和隔离实现: Docker是一个开源的容器化平台,它的底层原理是利用Linux内核的一些特性(如命名空间、控制组等)来实现容器的隔离。Docker通过将应用程序和其依赖的库、配置文件等打包成一个镜像,然后在镜像的基础上创建一个容器来运行应用程序。 9. 源码阅读: 在面试中,如果被问到源码相关的问题,可以先从自己熟悉的框架或者工具入手,例如Spring、MyBatis等。可以先了解一下它们的核心原理和设计思想,然后再去看一下源码,逐步深入理解。 10. 反问: 在面试中,反问是一个很好的机会,可以通过反问来了解更多关于公司和职位的信息。可以询问公司的发展方向、团队文化、工作流程等方面的问题,以便更好地了解公司和职位的要求。 最后,希望你能够从这次面试中吸取经验教训,不断提升自己的技能和能力,争取在下一次面试中取得更好的成绩。
2 回复 分享
发布于 2023-06-12 10:50 AI生成
什么岗啊
点赞 回复 分享
发布于 2023-06-12 15:06 江苏

相关推荐

评论
1
12
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务