面试在约定的时间准时进行,也是采用腾讯会议远程面试的方式。但是这是我第一次遇到面试官未打开摄像头的情况,后面经过沟通,双方都打开摄像头进行交流。

之前了解这个岗位主要是区块链相关的Java开发,所以事先对区块链相关知识做了准备,面试的时候这方面的知识应该是得到了认可。但是在Java方面却表现的不好。

以下对面试题进行一下回忆、整理与总结。

问:在spring boot框架项目启动的过程中,如何去初始化一些变量的值?

答:通过配置文件,做一些配置去读取,或者spring在启动的时候,即bean的生命周期中,即bean初始化的时候可以做一些设置去处理。

具体的又问是哪个类的哪个方法去处理,这里没有回答上来。这个问题没有get到面试官的点,所以回答的不是很好。与市面上的面试题有差异,超过了准备的范围,由此可以看出面试官还是有水平或者是说特意准备了一下。

问:SpringMVC的整个请求流程?

答:这个准备过程中对于这个请求流转的图有一点印象,于是按照印象回答了一下。

问:SpringMVC框架中,后台返回一个字符串,怎么在前台中显示出来? 

答:把这个字符串放到request域中,然后前台从request域中取出来。又具体问怎么操作,用哪个方法?回答使用request.setAttribute方法先设置这个值,然后再用request.getAttribute取出这个值。面试官皱了皱眉头,这个问题我也没get到面试官的点,所以感觉也回答的不好。

问:在SpringMVC框架中,@requestParameter这个注解有什么用?

答:来设置参数的。其实这个是映射请求参数,接受参数。这个问题竟然是面试官从我的博客笔记中找的一个来问的,不过博客时2018年写的,年代久远,加之项目中很少写springMVC的注解,所以这里忘了。不过这个还是第一次遇见面试官会去看我的博客,因为简历中都有写自己的博客地址。

问:对于多线程了不了解?如何保证线程安全? 

答:一些轻量级的处理,例如synchronized关键字,volatile关键字,其他的可以用Lock类来处理,或者线程池来处理。

Lock是一个类吗?它是哪个包里面的?

这里我特别自信回答Lock是一个类,源于之前看的一篇文章里面写它是一个类,用词不严谨害了我啊。Lock其实是一个接口,包名为java.util.concurrent.locks.Lock;

然后说到了volatile,讲到了它可以禁止指令重排序,然后可以在线程间共享。然后就是问是如何实现这两点的。我也具体回答了。但是面试官还是若有所思的样子,不清楚是他不懂还是我回答的他不满意。

问:数据库中的for update是表级锁还是行级锁?

答:行级锁。

问:单例模式有了解吗?

答:回答了单例的双重校验锁的写法,以及为何要双重校验。然后又问这样一定是单例吗,只会创建一个对象吗?回答大多数情况,应该可以了,这种写法。面试官应该是想挖掘更多的点来考察。

之前在公众号上也看过一篇讲单例的文章,讲的非常好,但是现在回过头去找却找不到了。就是这种层层递进式的讲解,单例一定是单例吗?然后不停的优化写法,如何破坏单例。

哦,说到这儿找到这篇文章了:

https://mp.weixin.qq.com/s/DXEtpuJLHcbk6g_GctkGnw

总结:这次面试,感觉面试官对于框架层面的细节问题考察比较深,有时会具体到某个类的某个方法,其他方面也在正常的Java面试题范围内。然后对于项目相关的问的比较少,或者前面回答的不好,后面没给机会。抑或这个岗位只是想招一个纯Java开发的人员,能快速上手写代码的人,没考虑其他方面。自己的优势也没有发挥出来。

远光武汉研发中心区块链事业部Java面试总结的更多相关文章

  1. 区块链使用Java,以太坊 Ethereum, web3j, Spring Boot

    Blockchain is one of the buzzwords in IT world during some last months. This term is related to cryp ...

  2. 区块链的java实现

    原文地址:http://blog.csdn.net/xiangzhihong8/article/details/53931213 本文90%来着于翻译,原文地址:http://java-lang-pr ...

  3. 创建自己的区块链合约java版web3接口——以太坊代币(四)

    texas-web3j-solidity项目是一个java版本的,使用web3j包和eth网络交互的小程序. 主要实现了以下功能: 1.发布合约 2.发起转账 3.查询交易 4.调用智能合约方法 te ...

  4. 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google

    摘要: 作为此次Gartner报告中唯一上榜的中国科技公司,阿里云获得六个评判维度的最高分,排名第二 近日,知名调研机构Gartner发布了全球领先公共云厂商区块链服务能力报告,作为唯一上榜的中国科技 ...

  5. 阿里云BaaS:降低区块链应用门槛,用技术构建商业互信

    5月8日,阿里云召开区块链服务(BaaS)商业化发布会,会上对BaaS产品.业务应用场景及生态策略进行了全面解读. 对于广大IT服务商和开发者而言,构建区块链应用存在三大痛点问题:成本高,研发投入大. ...

  6. 以太坊区块链Java(EthereumJ)学习笔记:概述

    本系列文章介绍以太坊区块链基于Java语言的解决方案.通过介绍EthereumJ定义的主要模块和Class,希望为大家学习和使用EthereumJ提供一些帮助. 整体架构 以太坊的Java解决方案主要 ...

  7. 边缘计算、区块链、5G,哪个能走的更远

    频繁出现的新词汇5G.区块链.边缘计算,这些都代表了什么,又能给我们的生活带来什么巨大的改变么?抉择之时已至,能够走向未来的真的只有一个吗? "没有什么能够阻挡,你对自由的向往....&qu ...

  8. 微软刚发布的区块链去中心化身份识别系统DID

    https://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=2653549389&idx=1&sn=158f9feb10d76a ...

  9. eos中BM与有BM特色的去中心化。区块链世界,白皮书为共识,代码为法律。

    比特币挖矿是谁算力高,谁更容易挖到新的比特币,而BM认为这太浪费资源了,于是设计了DPoS:在DPoS系统里,大家不再挖矿.而是指定几个人负责记账,不叫矿工,而叫见证人.比特股里开始是101人,EOS ...

随机推荐

  1. 半导体质量管理(LineWorks)_SPACE(统计过程分析和控制环境)

    LineWorks作为SEMI的质量管理,可为半导体制造商提供对实施标准,产品质量,质量和指标验证的全面控制.有许多附加模块和SPACE-Chart插件,可根据个人需求进行灵活调整. 三个主要特征是: ...

  2. 记一次解密wireshark抓取的冰蝎通信流量

    一.关于冰蝎 1.1 简单介绍 冰蝎是一款基于Java开发的动态加密通信流量的新型Webshell客户端.老牌 Webshell 管理神器——中国菜刀的攻击流量特征明显,容易被各类安全设备检测,实际场 ...

  3. 小书MybatisPlus第1篇-整合SpringBoot快速开始增删改查

    Mybatis Plus官方文档已经很完善了,为什么还要写一个这样的文档? 官方文档注重知识结构的整理,没有注重学习者的学习顺序 官方文档中的案例注重API描述,比较适合学会mybatis plus之 ...

  4. 每日一题 - 剑指 Offer 45. 把数组排成最小的数

    题目信息 时间: 2019-07-01 题目链接:Leetcode tag: 快速排序 难易程度:中等 题目描述: 输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最 ...

  5. CSS-界面滚动时不显示滚动条

    设置滚动条的样式: div::-webkit-scrollbar { width: ; }   关于::-webkit-scrollbar ::-webkit-scrollbar CSS伪类选择器影响 ...

  6. css完美解决网页在iphoneX的头部刘海显示问题

    一.解决iphonX白条,网站扩展到整个屏幕 网页在iphoneX的浏览器屏幕显示上,默认情况下在头部的2侧会出现白条背景,网站被限制在了一个“安全区域”内,移除白色背景的方法 方法一:设置body的 ...

  7. (三)ansible playbook

    一,YAML语法 YAML的语法和其他高阶语言类似并且可以简单表达清单.散列表.标量等数据结构.(列表用横杆表示,键值对用冒号分割,键值对里又可以嵌套另外的键值对) YAML文件扩展名通常为.yaml ...

  8. P3574 FAR-FarmCraft 题解

    题目 In a village called Byteville, there are \(n\) houses connected with \(n-1\) roads. For each pair ...

  9. 复杂链表的复制(剑指offer-25)

    题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点.(注意,输出结果中请不要返回 ...

  10. Vue---day05

    目录 2. 客户端项目搭建 2.1 创建项目目录 2.2 初始化项目 2.3 安装路由vue-router 2.3.1 下载安装路由组件 2.3.2 配置路由 2.3.2.1 初始化路由对象 2.3. ...