杭州时代银通 java 线上一面

#面经##时代银通##杭州#

本人 22年毕业,2年经验,双一流本,计算机相关专业
7.16 一面 昨天做的笔试

1.讲讲网关项目

2.Jwt用户鉴权流程

3.Jwt令牌里除了储存了用户信息还存储了什么

4.为什么要把用户信息存储到ThreadLocal中?答了避免在每次请求时都去解析JWT令牌,直接去ThreadLocal中取

5.Spring Boot中的自动配置原理?答了基于@SpringBootApplication注解,它是@Configuration、@EnableAutoConfiguration和@ComponentScan的组合。自动配置通过@EnableAutoConfiguration注解实现,这个注解利用Spring Factories机制,从classpath中的META-INF/spring.factories文件加载AutoConfiguration类。

6.持久层MyBatis动态sql如何拼接?没答上来

7.#{}和${}的区别?没答上来

8.MyBatis如何批量插入?没答上来

9.如何实现线程安全?答了如果需要集合类,map用ConcurrentHashMap,list用CopyOnWriteArrayList,CopyOnWriteArrayList基于写时复制技术实现读写分离

10.Synchronized和Lock区别?答了都是独占锁,每次只能来一个线程操作。Synchronized不需要手动上锁解锁,Lock可以通过lock.lock lock.unlock手动解锁

11.Synchronized和Lock作用范围?答了都是整个java虚拟机,如果有多个jvm,就不能保证线程安全。

12.不知道面试官问了什么,他那边太吵了。还说了ReentantLock和ReentrantReadWriteLock的特点。

13.核心线程数和最大线程数有什么区别?答了工作流程

14.说一下拒绝策略

15.常用的阻塞队列?答了ArrayListBlockingQueue和LinkedListBlockingQueue,后面查了下说错了没有list这个单词,是ArrayBlockingQueue和LinkedBlockingQueue

16.ArrayBlockingQueue和LinkedBlockingQueue这俩的区别?答了一个是数组,一个是双向链表,感觉跟ArrayList和LinkedList应该一样吧,前者查找效率高,后者增加删除效率高,直接通过指针插入删除

17.工作中常用的设计模式?还是答了这四个观察者模式,策略模式,单例模式,过滤链模式

18.观察者模式的优点?答了操作一个对象就可以通知订阅他的对象,减少耦合操作,不用一个一个去更新。

19.Spring事务的两种实现方式?答了在类上面标注@Transaction注解开启事务,第二种没答上来

20.Spring事务的传播行为?不会没答

21.Mysql的死锁怎么解决?

22.数据库的函数?答了max,min,sum,average

23.Mysql日期转化函数?答了toDate和toChar

24.有没有排查过线上问题?答了cpu过高排查和OOM异常内存溢出,后面说了dump文件用j visual vm排查

25.j visual vm里面有哪些信息?答了堆内存,新生代老年代的比例。这个不太清楚

26.反问,哪方面需要做提供,面试官说了MyBatis和数据库这块

总结:面试官那块儿环境太吵了,有两三次听不清他说话问的知识点广度还是有的,感谢拷打。
全部评论
第十六个有问题, 阻塞队列最大的区别在于是否任务队列有界, 无界任务队列如果任务处理速度更不上会导致OOM
点赞 回复 分享
发布于 2024-08-07 18:55 浙江

相关推荐

评论
11
34
分享

创作者周榜

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