Java开发面试复盘

上周参加了广州某中规模互联网公司的技术面试,面试方式采用的是某讯会议面试。之前有背过一些八股文,对自己做的项目也是比较了解的,而且面试之前还粗略地看了一些Java基础和一些Java框架高频率会被问到的问题,确保自己不会因为紧张而出现卡壳或者忘记的情况。但毕竟之前没有面试过,只在某音等平台看过一些面试录播,总的来说还是比较紧张。印象中面试官都是比较严肃的,而且会根据你的回答不断深究。但是我很幸运,这个面试官却比较随和,说话语气很友好,并没有别人说的那种高人一等的感觉。

整个过程持续了大概半个多小时,一开始是跟我聊聊学校生活,然后就开始问我的项目,因为我做的是一个博客系统,里面用到的都是比较常见的技术栈,然后他就根据用到的技术栈提问。然后是聊了一些题外话,因为我面试的是实习岗,虽然不会强制加班,但问了我是怎么看待加班的。然后估计我太菜了,没什么可问的,问我Java基础都掌握了那些,然后又问了我Java的数据类型有哪些。又问了一个我认为比较难的问题,面试过后我在网上搜了下,至今仍不知道答案,我现在也记不清问题了,比较模糊:在项目开发中,假如用long类型来存储数据,但是数据比较大,比较复杂,long类型无法满足,问创建一个什么样的类来解决这个问题呢?我只记得问题大概是这样。最后问我还有什么想问的吗,我当时就觉得有几个问题自己确实没回答好,然后就问我跟归公司这个岗位得匹配度有多少,就是我通过这轮面试得概率。面试官说至今为止他面了三个人,有一个确实不错,还有一个不太行,你是处于中间个那个。后面等了两天也没消息,然后我微信问了hr才知道我挂了。

总的说下我的感受:首先,面试官人还是很不错的,问的大部分都是比较简单的问题,面试过后我总结了一下,其实很多问题我都是会的,但是可能由于紧张,回答得有点急,然后导致有点模糊,面试官就会认为你的能力有问题。总的来说,心态真的很重要。但是毕竟是自己的第一次面试,虽然面试挂了,还是很有收获的,至少下次要调整好心态,也可以整理自己不会的短板,查缺补漏。

下面总结一下自己不会或者答得不好的题目:

1.问:你的项目中用了一个比较高级的东西Shiro(但是还听得不太清楚,以为是redis哈哈),你可以说一下你整合Shiro到你的项目中的步骤吗?

这是问的第一个问题,实在是有点紧张,回答得不好,然后直接说自己这里有点忘记了。

正确答案是:

首先导入Shiro依赖

<!--shiro整合spring的包-->
<dependency>
    <groupId>org.apache.shiro</groupId>
    <artifactId>shiro-spring</artifactId>
    <version>1.5.3</version>
</dependency>

编写配置类UserRealm 授权和验证

编写UserConfig 三层 UserRealm manager Faactory

编写UserController ,执行登录操作和验证登录信息,利用Model传提示信息给前端

@RequestMapping("/login")
public String login(String username, String password, Model model) {
    //获取一个用户
    Subject subject = SecurityUtils.getSubject();
    // 封装用户的登录数据
    UsernamePasswordToken token = new UsernamePasswordToken(username, password);

    try {
        subject.login(token);//执行登录的方法,如果没有异常就说明ok了
        return "index";
    } catch (UnknownAccountException e) {//用户名不存在
        model.addAttribute("msg","用户名错误");
        return "login";
    } catch (IncorrectCredentialsException e) {//密码不存在
        model.addAttribute("msg","密码错误");
        return "login";
    }

}

2.问:搭建springboot环境的步骤。(这个也是比较简单的,只是当时自己回答得不是很流利)

首先new project,然后选择spring initializr,选择jdk版本,配置相关路径和名称,勾选相关依赖,配置项目存储路径。创建完成后配置端口,运行空项目测试,成功后即可编写相关的包和类。

3.问:在项目开发中,假如用long类型来存储数据,但是数据比较大,比较复杂,long类型无法满足,创建一个什么样的类来解决这个问题呢?(就是我上面写的问题,这个问题不知道有没有记清楚,至今也不知道答案)

4.问:说一下这个rabbitMQ在你这个博客系统中的运用场景。(回答得不够流利)

总的来说:面试注意两个非常重要的点:

1.心态非常重要,一定调整好心态。

2.一定要对自己写在简历上的项目非常的了解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值