4/9 华为OD Java开发 一面
211本,23年9月老妈生病,从比亚迪裸辞空窗7个月,3月开始准备找工作,八股没背过,全凭运气,这几天在看408,以及各种所谓的进阶教程,边学边面。今天是继上次南京之后的第二场技术面试。
刚刚对接人说一面过了
1.我项目里的redis场景
jwt和数据库缓存:jwt设置的过期时间是多少? 24*60*60 过期时间还可以怎么设置,答了set kv后面可以直接跟expired_time
redis如果整个掉了怎么办?不是某个slave,而是整个掉了 不会答
2.redis内存穿透和雪崩
不会
3.SpringBoot启动流程?Spring如何加载组件?
第一个不会答,说了自带Tomcat,面试官提醒了我请求是怎么响应的?我才答了WebApplicationContext初始化扫描@Component注解,DispatcherServlet扫描@Controller,问了@RequestMapping @RequestParam @PathVariable
4.Redis持久化
为数不多知道的,rdb是快照,二进制文件小,两次备份之间丢失;aof记录操作,文件很大,配置everysec之后只会丢1秒
5.MySQL存储引擎之间的区别
说了个InnoDB支持事务,问我mysiam的锁和它的有什么区别,不会
6.union和union all的区别
不会
7.left join / right join /inner join
答了个允许哪边存在null,inner join不会
8.ArrayList和LinkedList区别
数组和链表,下标访问、增删效率
9.为什么要用rabbitmq?
强答了统一不同语言之间的通信格式,因为我的项目是对接C团队的,感觉是想问其他场景
10.Kafka和rabbitmq的区别?
强答了kafka用zookeeper
===========算法题,最长不重复子串============
abcabcbb 3
bbbbb 1
pwwkew 3 就是找挨着的最长的不重复的,pwke不挨着,wke挨着,返回3不是4
空串返回0
ij遍历,HashSet记录,遇到相同的停下,hashSet的size>max则赋值,i从下个位置开始
100% 没让我优化,继续问别的了。
======================================
11.为什么要用事务
我根据业务答的,扣这个表加那个表什么的,支支吾吾说了好多,面试官告诉我只需要回答 保证多表操作数据一致性 就行了
12.编程式事务
我忘了那个TransactionTemplate了,正好idea还没关,我写了几行伪代码,我说我记得有一次@Transactional不生效,我这样做的:
@Controller p c Controller{ p v add(){ xx.start(); service.method(); xx.commit(); } } @Service p c Service{ p v method(); }
也就是在Controller里把整个被代理的service全包住,在这里用过,其他地方全是声明式的
然后面试官问你写的这里如果service.method()报错了怎么办,我傻了,我说不确定有没有xx.rollback(); (结果刚查的,有rollback没有start 唉)
13.多线程用过吗
答了synchronized,Future和线程池,追问线程池怎么用的,不知道想考我啥,我就自顾自地说了构造方法,corepool,maxpool,keepalive,keepalive的单位,阻塞队列,线程工厂,拒绝策略,追问拒绝策略,答了Abort和Discard,默认Abort叫defaulthandler,笑着问我敢确定吗?我说就是abort
14.SpringCloud用过吗?和Boot的区别?
我说springcloud已经不是一种具体的技术了,它是微服务治理的一种解决方法,服务注册配置中心(eureka nacos),负载均衡,这个我正好清明的时候刚开始学,记得还比较多,我说微服务包含了下面这么多东西,还有日志消息CI/CD啥的,springcloud负责圈里的微服务治理。而boot只是整合了各种starter,是一种对spring的优化,约定大于配置,内嵌了tomcat服务器方便使用。
15.StringBuilder和StringBuffer
只知道线程安全的区别,别的啥都不懂啥都没答。
16.MySQL执行计划
根本不知道explain就是执行计划,拉了
感觉华为od现在只要不是太离谱就能过,只是会影响定级而已,面试官只要听到你说不会就会马上换问题,也不会给你反馈。
因为我本来就特别菜,每天忙着给老妈做饭照顾她起居什么的,时间利用的不好,3月才开始系统学习,现在是南京数通的流程,他们都说这边不太好,唉,继续看吧, 找不到就继续在家躺着。
#春招##社招##空窗期##华为od##Java#