元旦小礼品:想去面试的时候如何快速打造自己的面试亮点

news2025/1/20 10:54:54

新年快乐!

对于毕业生,或者工作时间不太长的同学来说,面试实习之前写简历是一件很痛苦的事情,特别是简历上没什么亮点,总感觉很心虚。这时候就会发现很多人凡是知道的,叫得上名字的统统写上去。可惜即使通过简历筛选,在面试过程中,面试官会针对简历的内容即兴提问,但是大部分都一问三不知,更别说深入掌握、精通这些内容了。

所以,如果是新手,你应该先接受自己是个新手,不要强行装*。而面试官看到你简历的一分钟就知道你是个新手,因此他们招你的时候就是有一定心里预期的,如果装*反而证明你不但技术不行, 人还不行。

我们这是应该重点打造几个能证明自己有能力、有基础的事情来打造亮点 。接下来我们就以Java后台工程师为例来说说该怎么做。

首先,如果是新手,那么JVM、高并发、分布式、微服务这些就先不要着急硬学了,因为你根本搞不懂这是在干什么。你可以这么做:

1.先跟着学一个小项目

1.到网上找个中小型的项目教程,跟着一点点做下来,这样可以让你对Java开发有个基本的认知。

这类项目在github、国内的gitee里有很多,如果想跟着视频做,B站里也有很多。注意不要找那种超大型的项目,因为你时间可能来不及,别消化不良。

这个工作能帮你扫盲,让你有和人家交流的基本常识,不然你对如何调接口都不知道,谈高并发又有什么意义呢?

具体要看什么,我们不做广告,暂时不推荐,有疑问的同学可以评论区讨论。

2.抓几个点,认真打造几个简历

上面的项目工作,能让你对后台开发有个基本的认知,但是写简历或者面试的时候,还是会发现一片空白,没法写,写了也毫无吸引力。

这是因为面试的侧重点和实际做项目的侧重点是不一样的。做项目是要能运行出来,需要花很多时间处理细枝末节、各种异常甚至还要运行前端代码等等,但是这些在面试的时候却很难论述,更不好证明自己。

面试侧重的是对技术、方案的理解程度、思维能力这些。例如你可能花了两天才将一个后端接口完成实现了,包括建库、建表,配置ORM等等。而面试关心的是,如果你接口的访问程度增加10倍会怎么样,如果降低响应延迟等等。

另外就是面试喜欢考源码,比如你阅读过什么框架的源码,然后就会继续问题其底层工作原理等等,如果一个都没看过,那就项目没有、源码也没有,自然就尴尬了。

所以我们为了面试,需要深入研究几个点。那具体哪些内容方面研究呢?这里我推荐几个:

2.1 mybatis+设计模式

java连接数据库使用的基础技术是JDBC,但是直接使用JDBC性能和开发效率都太差,所以产生了两个技术:数据库连接池和ORM框架,前者是为了提高数据库与Java服务通信的效率的,后者是提高我们开发速度的。连接池的问题,我们后面再看,这里先谈一下ORM框架。

java里目前常用的ORM框架有SpringJDBC和Mybatis两个,此外还有一个JPA,见的不多,Spring目前是Java开发的事实标准,但是问题是实在过于复杂,一般人都不敢说自己对Spring有深入理解。而SpringJDBC是基于Spring开发的,因此呢,想读透就难上加难。

不过呢Mybatis是一个独立的ORM框架,而且用得也很多,因此想研究其源码就要容易很多,而且在Mybatis里使用了大量的设计模式,因此阅读的时候可以与设计模式一起学习,一起理解。

那该如何学习呢?

首先,你要找个项目学习一下Mybatis是怎么用的,有什么功能等等,不要上来就看源码,那是无源之水无本之木。

其次,找个设计模式的材料来学一学,搞清楚设计模式每种到底是怎么回事。

最后,结合设计模式来理解Mybatis源码,这里推荐一本书《MyBatis技术内幕》,网上有电子版本的,这本书里就大量介绍了Mybatis里是如何使用某个设计模式解决特定问题的,例如

这样就可以给自己的简历打造两个亮点:熟悉Mybatis开源框架,精通设计模式以及典型应用了。

研究Mybatis有一个很大的风险是:很多公司不用Mybatis,这时候面试官可能对其没兴趣,也不会提问。

2.2 数据库连接池+多线程

我们前面说了,java连接数据库使用的基础技术是JDBC,但是直接使用JDBC性能和开发效率都太差,所以产生了两个技术:数据库连接池和ORM框架,前者是为了提高数据库与Java服务通信的效率的,后者是提高我们开发速度的。

目前使用最多的数据库连接池有两个:HikariCP 和Druid,这两个从性能等各个方面都大差不差,只不过一个是Spring社区做的,一个是阿里巴巴开源的,因此要评谁更好 ,就像评清华北大谁更好一样,对我们来说,哪个都够用。

那连接池是如何做到高性能的呢?这个就有挑战了,其中有两个方面值得我们研究:1.精准使用多线程技术,例如重入锁等等,2.设计性能更好的基础数据结构。

既然要精准使用高并发技术,那自然要先熟悉多线程相关技术和底层原理。如果学过Java多线程的同学应该知道,这门技术是非常晦涩、不好理解,而且也不好复现,因此学习难度是不小的。

“学而不思则罔,思而不学则殆”,对于新手可能学了,也不知道这些多线程技术该怎么用。而小巧精悍的数据库连接池就使用了大量项目的技术,因此两者结合就极好了。

不过,目前深入讲解数据库连接池的材料不多,深度也不太够,专门的参考书只找到一个《HikariCP数据库连接池实战 》,因此如果想打造成亮点,难度比较大。

2.3 xxl-job +定时任务调度+小型服务集群

微服务的技术、框架、方案特别多,但是不见得每个都难么难,XXL-JOB就是其中一个小巧精悍的功能。

在有些场景下, 我们需要定期来做某些事情,大家是否注意到csdn的博客排名不是每天都更新的,而是每周二晚上根据过去一周的最新数据重新生成排名,这就是定时任务要干的事情。

在实际工程中,我们的定时任务是分散在各个服务里的,这样服务多的时候,就容易发生遗漏、冲突等各类问题,所以我们最好将异步任务用一个服务来统一管理,统一启动、统一监控,这就是定时任务服务要做的。

目前从易用性、性价比等方面综合来看,xxl-job是最佳的,而且xxl-job也可以搭建成一个小型的集群。

因此我们在学习xxl-job的过程中,我们可以学习到Spring的异步任务、集群、多线程等大量内容。

学习xxl-job还有一个极大的好处:很多人写简历总是写自己参与,极少有机会独立承担一个事情,但是你可以在简历上写“独立完成某个公司的定时任务调度系统的搭建与集成”。

为什么呢?因为XXL-job其实是可有可无的,我司也是2022年才用这个,之前都是各个服务自己处理。作为新手,给公司锦上添花是很自然的,那让你做一个可有可用的定时任务系统就很合理了。

其次就是xxl-job本身确实不复杂,一个新手足以搞定,所以写了面试官也会相信。如果说自己设计了kafka异步任务系统,或者Zookeeper服务治理系统,人家肯定是不信的,你也没这个能力搞定。

目前xxl-job的材料比较分散,需要自己花比较多的时间来学习和梳理。

2.4  Servlet+Tomcat

在Java web里,最重要的技术莫过于Servlet,这是Java网络服务基础中的基础,因此对于初学者一定要对Servlet有非常清晰的理解。

但是呢?只学习Servlet肯定不够啊,该如何提高一下深度呢?那就认真研究一下tomcat的底层工作机制和源码吧。

即使到了现在SpringBoot横行的时代,tomcat仍然是其执行的核心基础,如果你能将tomcat的工作原理、甚至部分核心的底层处理过程研究清楚,那无疑是极好的加分项。

另外,tomcat目前学习材料也非常多,因此想学习就比较容易了。

目前想到的是这几个,后面再补充!

各位加油!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1348006.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pix2Pix如何工作?

一、说明 在本指南中,我们将重点介绍 Pix2Pix [1],它是用于配对图像翻译的著名且成功的深度学习模型之一。在地理空间科学中,这种方法可以帮助传统上不可能的广泛应用,在这些应用中,我们可能希望从一个图像域转到另一个…

【转载】最强搜索工具Everything的搜索技巧,你可能根本不会用!

转载自B站视频 https://www.bilibili.com/video/BV1Hw411W7vK/?spm_id_from333.880.my_history.page.click&vd_source5d2fad4f7faecf136254f663320a80a7 指定在某个文件夹下搜索 可以缩小搜索范围 排除某个目录 前面加! 运算符,与的关系 (空…

webrtc中的接口代理框架

文章目录 接口代理框架Proxy体系类结构导出接口 webrtc的实际运用PeerConnectionFactoyPeerConnection使用 接口代理框架 webrtc体系庞大,模块化极好,大多数模块都可以独立使用。模块提供接口,外部代码通过接口来使用模块功能。 在webrtc中通…

步进电机为什么叫步进电机,内部结构是什么,工作原理是什么,有什么特点,什么用途。

问题描述:步进电机为什么叫步进电机,内部结构是什么,工作原理是什么,有什么特点,什么用途。 问题解答: "步进"一词表示电机按照固定的步进角度运动。步进电机以控制脉冲信号来驱动转子按照一定的…

Ps:三角形工具

三角形工具 Triangle Tool可以绘制三角形形状(矢量形状,或者是基于像素的形状)和路径(形状轮廓)。 快捷键:U ◆ ◆ ◆ 常用操作方法与技巧 1、一般使用拖拽的方式绘制三角形。也可直接在画布上点击&#…

1.项目简介

本次项目建立的基础是基于Django后台admin管理功能上的二次加工以符合实际情况,所以需要读者对Django这个架构有一定的了解,具体可以查看作者的另一个专栏Django详解。 随着信息技术的迅猛发展,图书馆的借阅系统也在不断地进行更新和改进。传…

基于 OpenVINO Python API 部署 RT-DETR

1. RT-DETR 飞桨在去年 3 月份推出了高精度通用目标检测模型 PP-YOLOE ,同年在 PP-YOLOE 的基础上提出了 PP-YOLOE。而继 PP-YOLOE 提出后,MT-YOLOv6、YOLOv7、DAMO-YOLO、RTMDet 等模型先后被提出,一直迭代到今年开年的 YOLOv8。 YOLO 检测…

.net8 AOT编绎-跨平台调用C#类库的新方法-函数导出

VB.NET AOT无法编绎DLL,微软的无能,正是你的机会 .net8 AOT编绎-跨平台调用C#类库的新方法-函数导出 1,C#命令行创建工程:dotnet new classlib -o CSharpDllExport 2,编写一个静态方法,并且为它打上UnmanagedCallersO…

第二节 linux操作系统安装与配置

一:Vmware虚拟机安装与使用   ①VMware是一个虚拟PC的软件,可以在现有的操作系统上虚拟出一个新的硬件环境,相当于模拟出一台新的PC ,以此来实现在一台机器上真正同时运行多个独立的操作系统。   ②VMware主要特点&#xff1a…

【C#】知识点实践序列之Lock的锁定代码块

大家好,我是全栈小5,欢迎来到《小5讲堂之知识点实践序列》文章。 2023年第1篇文章,此篇文章是C#知识点实践序列之Lock知识点,博主能力有限,理解水平有限,若有不对之处望指正! 本篇验证Lock锁定代…

【Spark精讲】一文讲透Spark宽窄依赖的区别

宽依赖窄依赖的区别 窄依赖:RDD 之间分区是一一对应的宽依赖:发生shuffle,多对多的关系 宽依赖是子RDD的一个分区依赖了父RDD的多个分区父RDD的一个分区的数据,分别流入到子RDD的不同分区特例:cartesian算子对应的Car…

C#线程基础(线程启动和停止)

目录 一、关于线程 二、示例 三、生成效果 一、关于线程 在使用多线程前要先引用命名空间System.Threading,引用命名空间后就可以在需要的地方方便地创建并使用线程。 创建线程对象的构造方法中使用了ThreadStart()委托,当线程开始执行时&#xff0c…

【C++对于C语言的扩充】C++与C语言的联系,命名空间、C++中的输入输出以及缺省参数

文章目录 🚀前言🚀C有何过C之处?🚀C中的关键字🚀命名空间✈️为什么要引入命名空间?✈️命名空间的定义✈️如何使用命名空间中的内容呢? 🚀C中的输入和输出✈️C标准库的命名空间✈…

VStudio2022导出Qt项目在Linux的Qtcreator中运行修复错误记录

公司项目中的代码在VStudio2022中编写,交给我需要移植Linux的Qtcreator中,记录一下移植过程中的遇到的坑,按照错误顺序由高到低记录一下,边尝试边解决边记录,写作方面没有逻辑,每个人项目环境不一样&#x…

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取相机当前数据吞吐量(C#)

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK里函数来获取相机当前数据吞吐量(C#) Baumer工业相机Baumer工业相机的数据吞吐量的技术背景CameraExplorer如何查看相机吞吐量信息在NEOAPI SDK里通过函数获取相机接口吞吐量 Baumer工业相机通过NEOAPISDK获…

PHP与Angular详细对比 帮助你选择合适的项目技术

开发可有效扩展并提供诺克斯堡级安全性的Web应用程序和网站是每个开发人员的梦想。而使用这样的产品是每个用户的愿望。因此,为您的项目选择最合适和可靠的技术非常关键。 虽然PHP和Angular是完全不同的技术——PHP与JavaScript是一个更恰当的比较——但它们都广泛…

【JavaFX】JDK11 基于Gson、hutool、Jackson持久化存储实体类数据的解决方案 (读取、追加、去重、写入json对象)

文章目录 开发环境效果前言一、Gson是什么?二、使用步骤1.引入依赖2.创建实体类创建 JsonFileService类创建JsonFileService的实现类 JsonFileServiceImpl三、实现效果开发环境 JDK11IDEA 2023.3Gson、hutool、JacksonJavaFX 11效果 前言 使用JDK1

浅聊配置化-要不要实现动态表单

1、配置化的原则 配置化是一种抽象,把事物分成2类:不变的,可变的。 如果事物都是可变的,是无法实现配置化的。 配置化的根本在于找到不变的事物,基于不变的事物进行可变事物的配置。 所以,认为一切皆可…

Deeplearning4j 实战 (22):基于DSSM的语义匹配建模

Deeplearning4j 实战 (22):基于DSSM的语义匹配建模 Eclipse Deeplearning4j GitChat课程:Deeplearning4j 快速入门_专栏 Eclipse Deeplearning4j 系列博客:万宫玺的专栏_wangongxi_CSDN博客 Eclipse Deeplearning4j G…

基于Spring Boot的美妆分享系统:打造个性化推荐、互动社区与智能决策

基于Spring Boot的美妆分享系统:打造个性化推荐、互动社区与智能决策 1. 项目介绍2. 管理员功能2.1 美妆管理2.2 页面管理2.3 链接管理2.4 评论管理2.5 用户管理2.6 公告管理 3. 用户功能3.1 登录注册3.2 分享商品3.3 问答3.4 我的分享3.5 我的收藏夹 4. 创新点4.1 …