這是我第二次的面試。其實第一次也算不上面試,去了讓我手寫了幾道題,三道算法題,一道SQL題,兩道邏輯思維題,做完之后也沒看我的解答,隨便看了一眼簡歷,覺得我是大二的,大三還有課,沒辦法兼顧實習,就讓我走了。那次本來想混個面試經驗,結果基本上毫無收獲。
第二次面試,也就是這次,boss上寫的是一家20人以下的小公司,第一次給我線上面試。
一面
- 自我介紹
- 找實習的目的
- 學了哪些課
- 數據結構學了嗎
- 十進制轉十六進制怎么做,用代碼怎么寫
- Java中的基本數據類型
- Java中的包裝類
- JavaEE學了些什么
- 沒學過servlet、jsp嗎
- jdbc學過是吧
- jdbc的操作數據庫的步驟
- 什么是事務
- 轉賬這個例子,用jdbc怎么完成
- 持久層框架學了哪些?只學了Mybatis是吧?
- 那么轉賬這個例子,用Mybatis怎么操作,注意,要求僅使用Mybatis
- 如果結合Spring框架,如何完成事務
- io操作熟悉嗎
- 如果我有一個日志文件,怎么提取重要信息保存到數據庫中
- 日志包括些什么?
這是這家公司的第一次面試問到的問題,線上面試,線上面試也讓我汗流浹背。問了很多關于jdbc的操作,我記得都說已經不用這個技術了,我當時也是抱著好奇的態度去了解了一下,當然僅限于了解,大概知道是怎么回事,沒有具體深入學習,也基本沒有上過手。所以答的還是比較艱難。
其次,對于io操作和日志相關問題,我覺得是我的很大的弱點,當時在學javase的時候,就覺得這方面很無聊,很枯燥,而且我自己沒怎么實際用過,所以非常生疏,答的非常狼狽。不過面試官非常好,一直在鼓勵和引導我,告訴我“不用緊張,只是找實習,要求肯定沒有那么高,今天我們就當交流技術了”,后面io操作和日志我答不出來的時候,一直在引導我,向老師一樣一點一點教我,我那會都覺得我沒在面試,我在什么計算機培訓班上課,真的很感謝這位面試官。
到了反問環節,我一共問了兩個問題
-
您覺得我還需要學習什么,在以后的學習里有什么要注意的地方?
- 建議我還是需要了解JDBC、Servlet、JSP相關技術,雖然有些已經過時,但是是比較基礎的東西,現在的框架都是基于這些完成的。Spring這些東西就有一點像計算器了,真正到比如說做畢設這樣的時候,再用它也可以。所以對于時間還充足的學生來說,還是要鉆研一下的。其次對于一些寫代碼中用到的東西,多思考,比如netty,底層是基于NIO實現的,可以思考NIO是什么,為什么不用NIO,netty有什么變化這些問題。
-
面試結果什么時候出
- 本周內
其實這次面試結束后,我覺得按我的表現,估計沒什么希望了。結果在周五的時候,boss上通知我說通過了,不過我沒想到還有二面,二面需要到公司去。我真正去到公司,在一所研究所內,約的時間是下午三點,那天下午很熱。和第一次很像,不過第一次是兩點,我去了哪里沒有找到位置,所以我這次打算還是十二點吃完飯就出門,去了先找找位置,而且天氣熱,打算給自己留一點休息和下汗的時間,不然滿頭大汗的去,一個是影響狀態,另一個是會讓我自己覺得很狼狽,很不好意思。
去了之后,因為研究所需要人領路,不然無法進去。所以公司讓我到了打電話,有人來接我,我也見到那個人很好的面試官,就是上次面試我的。進入辦公室,里面好像就三四個人,給了我一臺電腦,告訴我一面是問一些問題,二面就上手做一些題。
二面
一共三道題,分別如下:
- 兩個線程,分別交替打印1-100,不能重復
- 自己建一張User表,對其進行增刪改查
- 沒仔細看,大概是和一面問的很像,io操作后保存到數據庫。
第一道題做了比較久,我了解多線程,但是基本上沒有手敲過代碼,所以那天卡了很久。第二道題,給了spring框架,但是沒有Mybatis,讓我用Spring JDBC來操作,我被卡在了分頁查詢那,我說我不太會,面試官問我,那你以前怎么做分頁,我說用Mybatis的分頁插件PageHelper。他說,你看,給你說少用Mybatis,沒了它就好像什么也不會。我也覺得是這樣,對于Spring整合Mybatis框架,進行增刪改查,我還是比較熟練。但是沒了框架,或者讓我從頭搭起框架結構,我就有一些手忙腳亂,不知道該做什么。
總結
所以,最后總結一下,這次面試是失敗的,但是我確實有所收獲,不像第一次。
- 多敲,除了多背八股,多敲代碼,尤其多線程,IO操作,以及從0開始自己寫項目的能力,而不是把項目大概結構拿過來,在其基礎上做增刪改查。
- 后續還是要學習一下JDBC、Servlet、JSP相關技術
- 重新學習IO相關知識