杭州时代银通 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和数据库这块
总结:面试官那块儿环境太吵了,有两三次听不清他说话
问的知识点广度还是有的,感谢拷打。
本人 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
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享