菜鸟的2020应届面试记录

前言:

最近开始面试了,做个记录吧,不然太容易忘了,问题和回答会有些出入,但差不太多

  1. 日期:2020-3-17			公司:微品致远
    第一场面试,很紧张	
    Q:请做个技术方面的自我介绍
    A:。。。。。。。。(省略)
    Q:请说技术方面的
    A:。。。我学了Spring security。。。
    Q:简历上说会linux常用命令,说一下有哪些
    A:额,额,额(长时间没用,一下子想不出来)
    Q:你说学了Spring security,说一下常用注解
    A:。。。Secured,jsr-250。。。(答不上来)
    	省略。。。。。
    Q:就这样吧,面试结束
    A:不问基础吗?
    Q:学了那么多框架基础就不用问了
    A:好吧。
    
    结果:
    总结:不熟悉的就别拿出来自爆了
    

Spring security常用注解(部分):
在security:global-method-security标签中配置要使用的注解方式
pre-post注解:基于表达式的注解,
jsr250注解,
secured注解

secured注解:spring security定义的用来支持方法权限控制的注解

注解名 使用或说明
@Secured 使用:@Secured(“ROLE_ADMIN”)

jsr-250注解:

注解名 使用或说明
@RolesAllowed 访问方法时应该具有角色;使用:@RolesAllowed(“ROLE_ADMIN”),ROLE可以省略
@PremitAll 任何角色都可访问
@DenyAll 任何角色都不能访问

支持表达式的注解:

注解名 使用或说明
@PreAuthorize 调用方法前进行权限验证;使用:@PreAuthorize(“authentication.principal.username == ‘tom’”)
@PostAuthorize 调用方法后进行权限验证
@PreFilter 调用方法前对集合类型的参数进行过滤
@PostFilter 调用方法后对方法的返回值进行过滤
  1. 日期:2020-3-20			公司:众智鸿图
    面试的是个小姐姐,	
    Q:先做个自我介绍
    A:。。。。。。。。(省略)
    Q:List Set Map的区别
    A:List是线性表,支持存放重复数据;Set是集合,不支持重复数据;Map是映射,按key-value保存数据。。。。
    	都是基础就省略了,说些没答上来的:
    Q:SpringBoot了解吗
    A:了解一些,Spring Boot是为了解决。。。。
    Q:SpringBoot常用注解
    A:。。。。(真记不起来)
    Q:关系型和非关系型数据库你知道哪些
    A:关系型:Oracle,MySQL,sqlite,非关系型:ElasticSearch,MongoDB(Redis没想起来)
    Q:数据库备份数据怎么做
    A:额,额,额,不会
    Q:三范式
    A:。。。。(确实没复习到,感觉说的不好)
    Q:查询数据很慢,怎么定位问题
    A:不会,平时数据量都很少。。。(这考察的是思路){
    			面试官:哎呀,你这是从数据量方面思考,然后呢
    			我:。。。(回答不上来,真笨)
    		}
    Q:in和exists哪个效率高:
    A:in效率高,不对,额,没实际比较过,我不确定
    Q:callable用过没
    A:没用过
    Q:死锁是什么?死锁的解决
    A:死锁是。。。死锁的解决不会
    Q:平时怎么学习的,会做记录吗
    A:平时。。。。记录有,但比较少
    Q:以后会走管理方向吗,为什么
    A:可能大后期会走管理方向,为新人提供经验
    
    结果:
    总结:确实平时没咋做记录,觉得都是小问题,没必要,有时问题解决了都不知道咋解决的,不过我一般记在电脑上。
    		以后还是多记点,起码问起来也好看,也能更好地回顾知识点。要做研发就是要多积累
    		不积跬步无以至千里,不积小流无以成江海。
    

    三范式:设计关系型数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小

    • 第一范式:保证每列的原子性
      即表中的所有字段都不可再分
    • 第二范式:满足第一范式,保证一张表只描述一件事情
      即所有非关键字都依赖与关键字
    • 第三范式:满足第二范式,每列都和主键直接相关
      即不存在传递依赖

    in和exists哪个效率高:IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况

    死锁:

    • 什么是死锁:
      两个或两个以上线程在执行的过程中,由于资源竞争或者相互通信而造成的一种阻塞现象,如果没有外力作用,他们都将无法继续执行下去。

    • 死锁的要素:

      • 互斥使用:当资源被一个线程使用时,其他线程不能使用
      • 不可抢占:资源请求者不能抢夺资源使用者的资源,只能等使用者自己释放资源
      • 请求和保持:请求资源者在请求其他资源时,保持对原有资源的占有
      • 循环等待:存在一个循环等待资源的队列
    • 如何避免和解决:

      • 避免:
        • 死锁预防:避免发生产生死锁的四个必要条件
        • 有序资源分配:资源按某种规则系统中的所有资源统一编号,
        • 申请要求:申请资源时必须以编号上升的次序
          • 对它所必须使用的而且属于同一类的所有资源,必须一次申请完
          • 在申请不同类资源时,必须按各类设备的编号依次申请
        • 银行家算法:
          • 解释:源于银行的借贷业务,一定数量的本金要应多个客户的借贷周转,为了防止银行家资金无法周转而倒闭,对每一笔贷款,必须考察其是否能限期归还。在操作系统中研究资源分配策略时也有类似问题,必须保证得到的资源的进程能在有限的时间内归还资源,以供其他进程使用资源。
          • 具体实现:把一个进程需要和已占有资源的情况记录在进程控制中,假定进程控制块PCB其中“状态”有就绪态、等待态和完成态。当进程在处于等待态时,表示系统不能满足该进程当前的资源申请。“资源需求总量”表示进程在整个执行过程中总共要申请的资源量。显然,每个进程的资源需求总量不能超过系统拥有的资源总数, 银行算法进行资源分配可以避免死锁。
      • 解决:在系统中已经出现死锁后,应该及时检测到死锁的发生,并采取适当的措施来解除死锁。
        • 死锁预防:设置某些限制条件,破坏死锁产生的四大必要要素
        • 死锁避免:系统对每个进程所申请的资源请求进行动态检查,根据检查结果决定是否分配所请求的的资源
        • 死锁检测:如果系统发生死锁,要及时的检测出来,以便处理
        • 死锁处理:
          • 重启:代价太大
          • 销毁或挂起进程:终止参与死锁的进程,收回它们占有的资源
          • 进程回退策略:使进程回退到之前没有发生死锁的某一处,太过理想,操作难度大
  2.  日期:2020-3-20			公司:上海联众
     这家公司紧接着上家打来电话
     Q:简单的做个自我介绍
     A:。。。。。。。。(省略)
     Q:SpringBoot会不
     A:不会(吃了两次亏,不敢了)
     Q:那你会啥
     A:只会SSM
     Q:说一下Spring mvc用户进行请求的流程
     A:dispatcherServlet收到请求 -> 。。。 ->dispatcherServlet把响应返回给用户
     	。。。
     Q:你是培训的吗
     A:我是自学的(太穷了,没钱培训,培训两万都顶得上我四年学费)
     Q:好了就这样了,基本可以了
     A:不问基础吗?
     Q:学了那么多框架基础就不用问了(这话好像在哪里听过)
    
     结果:疫情结束后你自己来我们公司进行后续的面试吧
    
  3.  日期:2020-3-23			公司:中科创达
     面试官的是个很年轻的兄弟	
     Q:先做个自我介绍
     A:。。。。。。。。(省略)
     Q:你英语怎么这么差,是什么原因
     A:。。。。。。。。
     	。。。省略基础
     Q:你说你做过一个安卓的项目,说一下
     A:这个项目是学校的。。。。我主要是写属性动画的,添加了
     。。。功能
     Q:这个功能这么实现的,或者说流程,消息怎么传递的
     A:就是接收到车上can的数据,然后。。。。。最后使用。。。(感觉没说清楚,好几个月没摸安卓了,主要是电脑太差,跑AS太慢,搞安卓太难受)
     Q:了解我们公司吗
     A:。。。。。。。。(请自行百度)
     Q:我给你说一下我们公司。。。。。
     A:嗯嗯嗯嗯嗯嗯嗯
     Q:你最大的缺点是什么
     A:。。。。。。。。(好像有很多,但说不上来)
     Q:你没什么想要问我的吗
     A:我想知道我面试通过了没(真的很想赶紧找份工作)(后来我哥说你说这句话就是个傻逼,哪有这样说话的)
     。。。。。
    
     总结:面试官:我建议你回答的时候可以把问题和你的思考结合起来回答,联系你所做过的项目来回答会更好些
    
  4.  日期:2020-3-23			公司:烽火通信
     腾讯会议面试(跟上面的撞到一起了我还不知道,还高兴终于又面了一家,电话打过来时说是要用腾讯会议我都蒙了,感觉凉凉,只能一直说抱歉,大家不要犯这个错误)
     Q:先做个自我介绍
     A:。。。。。。。。(省略)
     	。。。省略基础 (感觉回答的不太好,开着视频感觉怪的)
     Q:说一下你项目是怎么做的
     A:(有点蒙)先是需求分析。。。再是系统设计。。。再是详细设计。。。再是代码测试(还是感觉回答的不好)
     。。。(剩下的忘了,觉得自己不再状态,有点蒙)
     最后问了公司的一些问题,了解了公司的一些情况,面试的大哥还是很好的,后面有位兄弟可能是我占了他的时间时不时的进来一下(非常抱歉)
     
     总结:要复习下软件工程的知识了
    
  5.  日期:2020-3-23			公司:麒盛科技
     电话打过来时我正好在面上一家,我思索了两秒后直接挂断,唉,咋都撞一起了,
     感觉处理的也不好,也许我该接通后说下原因。算了算了
    
发布了12 篇原创文章 · 获赞 3 · 访问量 2322

猜你喜欢

转载自blog.csdn.net/lhg1714538808/article/details/105051597