13. 赢时胜面试复盘

结果

过了,拿到offer

时间

2023.3.13

心得

题目

讲一下你做过的业务?

总结过

数据库层面的性能问题排查过吗?

讲一下遇到的慢sql

怎么查询慢sql?

又是这个问题

mysql查看执行计划的方式有几种?

先记住 explain 关键字吧。

jdk1.8的新特性可以说一下吗?

总结过

localDate和Date的区别是什么?

总结过

stream流可以收集多次吗?

stream属于管道流,只能消费一次,当第一个stream流调用完毕方法,数据就会流转到下一个Stream上

而这时第一个stream流已经使用完毕,就会关闭了,所以第一个Stream流就不能再调用方法

stream().map()时,stream是否已经被操作了?

不是,stream流属于惰式执行。stream上的操作并不会立即执行,只有等到用户真正需要结果的时候才会执行。

列举几个线程安全的集合?

总结过

#社招##牛客在线求职答疑中心##数据人offer决赛圈怎么选#
全部评论
我曾经做过的业务包括: 1. 电商平台的订单管理系统,包括订单创建、支付、发货、退款等功能。 2. 社交平台的用户管理系统,包括用户注册、登录、个人信息管理、好友关系管理等功能。 3. 金融平台的投资管理系统,包括产品管理、投资记录管理、收益计算等功能。 在数据库层面的性能问题排查方面,我曾经遇到过慢SQL的问题。我会通过以下步骤来排查: 1. 使用MySQL自带的慢查询日志功能,查看哪些SQL语句执行时间较长。 2. 使用EXPLAIN关键字,查看SQL语句的执行计划,分析是否存在全表扫描、索引失效等问题。 3. 使用MySQL自带的性能分析工具,如pt-query-digest等,分析SQL语句的执行情况,找出慢SQL的瓶颈所在。 在MySQL查看执行计划的方式有多种,包括使用EXPLAIN关键字、使用SHOW PROFILE命令、使用MySQL自带的性能分析工具等。 JDK1.8的新特性包括Lambda表达式、函数式接口、Stream API等。Lambda表达式可以简化代码,使代码更加简洁易懂;函数式接口可以方便地实现函数式编程;Stream API可以方便地进行集合操作,如过滤、映射、排序等。 LocalDate和Date的区别在于,LocalDate是Java 8引入的新日期时间API中的一个类,它是不可变的,线程安全的,可以方便地进行日期操作;而Date是Java早期的日期时间API中的一个类,它是可变的,线程不安全的,使用起来比较麻烦。 Stream流可以收集多次,但需要注意的是,每次收集都会创建一个新的流,原来的流不会受到影响。如果需要对同一个流进行多次操作,可以使用peek方法来进行中间操作,而不是终止操作。 线程安全的集合包括ConcurrentHashMap、CopyOnWriteArrayList、CopyOnWriteArraySet等。这些集合都是线程安全的,可以在多线程环境下使用,而不需要额外的同步措施。
2 回复 分享
发布于 2023-03-18 11:16 AI生成
后来入职了吗,大佬
点赞 回复 分享
发布于 03-22 10:51 山西

相关推荐

1. 自我介绍2. 项目都是自己写的吗?3. 我看你用 koa2 写后端,为什么选择它,能讲讲吗?4. 那你提到 koa2 它是不提供中间件的,你是怎么解决的?5. 中间件的原理是什么?(洋葱模型)6. 你刚刚说碰到 next() 就进入下一个中间件,那 next 只能执行同步,如果是异步的话,你是怎么处理的?(async/await,但是我发现,有的中间件需要在异步中间件之前执行,所以我用 try/catch 来处理异步中间件的异常)7. JS 异步发展史,以及它们的优缺点说一下 (回调函数--Promise--Generator--async/await)8. 你刚刚说 Promise 状态不能更改,那如果我要设计一个能修改 Promise 状态的函数,你会怎么设计?9. CSS 水平垂直居中的方法(flex、grid、绝对定位 + margin:auto、绝对定位 + 负 margin、绝对定位 + transform、table-cell)10. 你刚刚说到 flex 布局,那 flex:1 是什么意思?(flex: flex-grow  flex-shrink  flex-basis;等价 flex:1 1 0%表示元素可以均分剩余空间,可拉伸、可压缩,不依赖内容宽度,自动自适应填充布局。)11. 父容器宽是 500px,然后它左右各有两个子容器是 100px,如果设置 flex: 1,那它的宽度是多少?(500-100-100=300px)12. 说说你对浏览器缓存的理解(强缓存、协商缓存)13. 如果一个用户,他怎么去刷新都无法刷到最新版的代码,你能说下可能的原因吗?(版本号、hash等)还有吗?(我说我不知道了,面试官说还有 CDN 没有同步,我说企业才会这么干,自己写项目一般不会,我知道 cdn 是用来解决高并发的手段)14. React你熟吗?说下 React 函数组件和类组件的区别15. 怎么避免 Hooks 导致组件重新渲染?(使用 useCallback、useMemo、React.memo、useRef等等)16. 谈一下我对 React 的状态管理的理解(Redux、Mobx、Zustand,我说 Zustand 用的最多)17. React 常见的 hooks 有哪些?(useState、useEffect、useRef、useCallback、useMemo、useReducer、useContext、useImperativeHandle、useLayoutEffect、useDebugValue)18. TS 你熟吗?我们引进 TS 的目的是为什么?19. interface 和 type 的区别20. 说下 TS 里的泛型21. 我现在有十个字段,比如十个字段就要 A B C D E F G 这种。那我现在另有另外一个方法,这个方法接受的参数呢,必须是这个 interface A 里面的这个 K。就比如说你可以是 A B C 可以 A B C D 任何组合都可以,但是必须是这个 interface 里面的 A 里面的定义的。这个 K 这种类型的话是怎么去定义呢?(说实话我有点不太理解啥意思,反正我说了 keyof)``` TypeScriptinterface Obj {A: stringB: stringC: stringD: stringE: string// 其他字段...}```22. vite 用过吗?说说和 webpack 的区别。vite 的优缺点是什么23. 说说 Tree shaking(树摇) 和 Code Splitting (代码分割)的区别24. Git 你熟吗?说说 git merge 和 git rebase 的区别,什么时候用 git merge,什么时候用 git rebase?25. web3 你熟吗?(不太熟,听说过而已)26. 我看你自我介绍说了 AI,你是怎么用的?27. 除了提示词,还有什么能让 AI 更聪明?28. AI 的优缺点你说一下29. AI 发展这么快,你觉得我们以后会扮演什么角色?30. 反问基本都答上来了。面了我80分钟,我还以为稳过的
查看29道真题和解析
点赞 评论 收藏
分享
求职老司机:前端比后端还难 hc 砍一半 不如学点 node 偏全栈
点赞 评论 收藏
分享
评论
3
8
分享

创作者周榜

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