尼尧的面试日记:面试记录(五)

最近开始找工作了,坐标杭州。渣渣感觉面试应该挺困难的,也不知道具体会问哪些类型,会在面试完把每一次面试问到的题目列出来, 一个作用是参考记录,另一个作用是可以把自己不会或者弱项的问题及时补齐

暂时是先把问题列出来,有时间的时候会把答案补上。

希望能找到一个好工作,加油

尼尧的面试日记:面试记录(五)


我大概总结一下,小型公司2年以下开发主要业务就是CRUD,招人肯定是希望能立马上手,所以面试范围我押题是常用的框架(SpringBoot、Spring基本概念,Mybatis),事务、数据库相关(锁、事务级别、sql优化,数据库底层概念等)、异常。有些会问一些设计模式(主要掌握工厂模式、单例模式、代理模式。)。

中大型公司的话,加上 JVM,集合,并发编程,一些网络知识。有些可能还会有一两道算法题。甚至开始问分布式了,具体看他们业务。

大厂请直接参考我画的java路线图,大厂知识路线没有3年以下之分,只有深/广度之分:Java知识体系脑图(2020年)


本次面试过程


  • 背景

金融类公司。在线面试,就突然收到笔试邮件,两天内登陆,限时150分钟,有4道算法题,一些单选题,多选题、填空题、简答题,共计50个。需要开启摄像头,不许切出全屏答题页面。

  • 过程

不知道有几次,我猜测笔试过了应该再面试;HR也没联系我就直接发了一个笔试邮件,先做了再说,不然今天就超时了。简历投的太多也不知道具体是哪一家公司了。题也比较多,做完只能记住一些大概了。

  • 后续
    过了5天后,收到了面试邀请,去了现场面试,流程有点乱,HR没告诉面试官,我一面完差点就走了,然后走之前告诉HR我准备离开又叫回去了,最后经过三轮(技术面,技术负责人面、总监面)面试。

笔试题


单/多选题

单/多选题忘了题目了共计20+道,大概范围是java基础、spring(原理以及一些注解)、mybatis、mysql、事务;docker有两道。

填空题

题数10+,例如:

1.Java定义整形变量的关键字,四个空

我猜测是基本数据类型,写了int、long、short、byte。


2、mybatis有哪两种事务机制

使用JDBC事务管理机制:使用JDBC的事务管理机制:即使用java.Sql.Connection对象完成对事务的提交,回滚和关闭操作。

使用MANAGED的事务管理机制:mybatis本身不会去实现事务管理的相关操作,而是交个外部容器来管理事务。当与spring整合使用后,一般使用spring来管理事务。

3、只有满足条件的记录才会包含在查询记录中,是什么连接?

这题我看得比较懵,但是看描述应该是 内连接 (inner join),在网上查也是内连接。


4、JPA的Entity自定义主键策略使用哪个注解?

答案:@GenericGenerator@GeneratedValue注解。

之前没怎么用Sping-Data-JPA,这题完全懵。


  • JPA中主键策略用法

在JPA中,我们是通过@id@GeneratedValue来指定id主键和id策略的,比如:

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private String id;
  • 4种JPA策略用法

我们点进@GeneratedValue源码里可以看到,strategy属性是由GenerationType指定的,我们点进GenerationType里面可以看到这里定义了四种策略:

  • TABLE:使用一个特定的数据库表格来保存主键。
  • SEQUENCE:根据底层数据库的序列来生成主键,条件是数据库支持序列。
  • IDENTITY:主键由数据库自动生成(主要是自动增长型)
  • AUTO:主键由程序控制(也是默认的,在指定主键时,如果不指定主键生成策略
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值