招银提前批 视频一面 7.10

招银提前批 视频一面 7.10

大概30分钟,中间面试官打了个电话

  • 自我介绍
  • 上来先做题,lc easy难度
  • 介绍下HashMap和ConcurrentHashMap
  • 介绍下ArrayList和LinkedList
  • 介绍下static关键字,其他关键字有了解的再介绍一下
  • SQL了解么,写个sql吧。订单表,有订单id和下单商品,统计销量最多的前10个商品的sql语句(太久没写sql了,没写上来)
  • 介绍项目
  • Spring事务开启
  • Spring基于@Transactional 的事务失效场景(不了解)

补充最后一问

  • 如果使用 MySQL 且引擎是 MyISAM,则事务会不起作用,原因是 MyISAM 不支持事务,改成 InnoDB 引擎则支持事务。
  • 注解 @Trasactional 只能加在 public 修饰的方法上事务才起效。如果加在 protect、private 等非 public 修饰的方法上,事务将失效。
  • 如果在开启了事务的方法内,使用了 try-catch 语句块对异常进行了捕获,而没有将异常抛到外层,事务将不起效。
  • 在不同类之间的方法调用中,如果 A 方法开启了事务,B 方法没有开启事务,B 方法调用了 A 方法。如果 B 方法中发生异常,但不是调用的 A 方法产生的,则异常不会使 A 方法的事务回滚,此时事务无效。如果 B 方法中发生异常,异常是调用的 A 方法产生的,则 A 方法的事务回滚,此时事务有效。在 B 方法上加上注解 @Trasactional,这样 A 和 B 方法就在同一个事务里了,不管异常产生在哪里,事务都是有效的。简单地说,不同类之间方法调用时,异常发生在无事务的方法中,但不是被调用的方法产生的,被调用的方法的事务无效。只有异常发生在开启事务的方法内,事务才有效。
  • 在同一个类的方法之间调用,如果 A 方法调用了 B 方法,不管 A 方法有没有开启事务, B 方法的事务是无效的。
  • 如果使用了Spring + MVC,则 context:component-scan 重复扫描问题可能会引起事务失效。
  • 在同一个Service中两个方法,一个方法调用另外一个本Service的方法,俩个都加了transactional注解,第二个也会失效。
#招银网络提前批面试##招商银行##面经##校招#
全部评论
楼主你好,请问你是什么岗位?开发的话,是Java方向还是C++方向?或者其他语言方向~
点赞 回复 分享
发布于 2020-07-10 22:12
这不是明显的java
点赞 回复 分享
发布于 2020-07-15 23:21
请问楼主过了吗
点赞 回复 分享
发布于 2020-08-05 16:26

相关推荐

无敌虾孝子:喜欢爸爸还是喜欢妈妈
点赞 评论 收藏
分享
评论
3
15
分享
牛客网
牛客企业服务