一位朋友秋招面試了17家公司(都是中小公司或者銀行),Java 後端崗。下面是他的個人情況、求職經驗已經這17家公司的面經。
個人情況和求職經驗
其實現在是挺後悔大學沒有好好的學習的,因爲基本上都會提到一些成績相關的事情,每次填成績都只能填個50%(實際上更低),並且還有掛科,沒有獎學金,沒有學生經歷,沒有競賽經歷,沒有實習經歷,簡歷上真的是空空如也,自我介紹的時候也是一分多鐘就全部講完了(有時候挺尷尬的)。
對於中小廠,其實在八股文方面都是很常見的內容,背好JavaGuide,做好每次面試之後的覆盤,然後多面試,這樣就能應付大部分的八股了。
然後就是項目這一塊確實是需要認真對待的,起碼項目中的每一個細節你都要知道,而且有一些面試官會問你項目中的難點和亮點(每次被問到說實話我都沒啥東西說,我覺得沒啥難點),所以一定要提前準備。
對於整個找工作的流程的話,首先大二下開始網上的自學,大三某天機緣巧合下看到了 JavaGuide(那時候剛開始背八股文),然後就發現真好用,後來也秒加入了知識星球。
秋招大概是八月份弄到十月底,總共投了上百分建立,筆試幾十個,面試十幾個,太菜了,項目準備太不充分了,以至於只有一個小廠的offer,給我拒絕了。
然後春招又換了guide哥推薦的那個小說精品屋(自己沒做啥優化,所以也沒啥亮點),(寒假本來想着一定狠狠刷算法題,然後又是不了了之)三月份開始投簡歷,沒刷多算法的惡果出來了,很多中廠的中等筆試題都過不了了,倒在了筆試上。到目前爲止投了大概幾十份簡歷吧,面試的也是十幾個。最後感覺進廠沒有機會,就瞄準銀行投遞,最後也是拿到銀行的offer。
最後,我其實是一個很懶散的人,大學宿舍裏沒有學習氛圍導致成爲了一個擺子,找工作最早的躊躇滿志進大廠,現在這個結果不過也不算壞。現在就是專心搞畢設寫論文畢業嘍,最後這幾個星期放鬆一下, 5.12一定要狠狠的通宵玩塞爾達。
希望大家都加油,都能努力找到一個讓自己滿意的工作
面經
大多數都只記錄了一面,二面之後由於一般是hr面或者二面答的都不太好就沒有心情作記錄了。
萬得
- 爲什麼要用mybatis不直接用sql
- jwt的組成?爲什麼要用jwt?
- 排序算法的穩定性
- hashmap爲什麼是兩倍擴容
- java的鎖的知識你瞭解嗎?悲觀鎖樂觀鎖的實現?cas是什麼?
- synchronized底層原理?
- 爲什麼要用restful風格?
工行軟開提前批
太看重學歷和成績, 羣裏70%的985,我成績差有掛科給一頓噴。
- 解釋一下二分查找
- 你是怎麼學mysql的
- 然後就是閒聊和噴成績,體驗很差。
同花順
- jvm內存結構,垃圾回收策略,垃圾回收算法
- 排序算法,時間複雜度
- mysql索引你知道嗎?
- 項目如何分表?
- 數據庫的隔離級別?
- mysql鎖?
富士通南大軟件
- 計算機網絡七層結構,五層結構?
- restful具體是幹什麼的?
- jwt從cookie到jwt解決了什麼,cookie是幹什麼的。
- 還有些不記得了
浙商銀行
- mybatis # 和 $ 區別
- mybatis 一二級緩存
- @autowired和@resource區別
- springboot自動配置原理
- 數據庫隔離級別,可重複讀解決幻讀怎麼做的?數據庫本身的mvcc
招銀網絡
一面:
- spring的自動裝配過程
- spring中的攔截器和過濾器區別?
- 接口和抽象類的比較
- springboot比spring好在哪裏
- mybatis好在哪裏
二面:
- 設計一個考覈系統,數據庫如何設計(這種題之前真不會,亂答一通)
- mybatis String如何映射到varchar
- mybatis 比如實體類中是string,數據庫中是integer會怎麼樣
- 設計一個權限系統
面試官建議還需要多多學習
卓望數碼
- 解釋一下泛型的作用,泛型的橋方法?泛型擦除是什麼?
- ArrayList和LinkedList的區別?ArrayList的擴容方式?
- 爲什麼不推薦使用內置線程池創建方式?
- 什麼是cas?
- Mysql 索引設置注意點?索引類型?索引失效場景?
- redis 持久化方式?
- 高可用方面你知道嗎?
- Spring常用的註解?兩種注入方式的區別?SpringBootApplication這個註解的解釋?
-
{} 和 ${}的區別?
深圳同爲
-
你用了ThreadLocal 爲什麼要用這個,其他線程可以獲取到這個信息嗎?要怎麼獲取到
-
你使用了策略模式,爲什麼不用模板方法模式,這兩個有什麼區別?設計模式需要看看吧
-
你係統中有什麼難點?
-
爲什麼要用jwt?有什麼優點?
-
Java的設計原則是什麼?爲什麼要用Java的設計原則
-
mysql如何查詢慢sql?爲什麼會有慢sql?數據庫的優化手段?
-
如何踢人下線?使用jwt這種
-
線程的狀態,運行xxxx這種
-
http狀態碼?
-
各個隔離級別,能防止什麼?
-
hashmap爲什麼使用的是紅黑樹不是其他樹
-
synchronized的lock的區別?
-
Spring如何管理事務
-
Spring的幾個事務傳播級別
順豐
-
如何進行數據庫性能的分析,如何排查慢sql
-
數據庫中你的小說時怎麼存儲的
-
數據量很大的數據放到redis中,需要做什麼處理比較好
-
Java中的鎖?
-
Mybatis中resultmap的繼承
-
MybatisPlus的底層原理
-
HashMap和ConcurrentHashmap的區別
-
雙親委派機制,和類加載器,雙親委派機制的源碼看看?(問比較多次了)
-
你用過Juc包下的哪些東西?
-
緩存雪崩,緩存擊穿,緩存穿透,如何解決?擊穿和穿透的本質區別是什麼
-
聚集索引,覆蓋索引
-
SpringBoot的自動裝配原理。
上海銀行
- 項目中怎麼樣使用策略模式實現用戶認證
- 主鍵索引和唯一索引可以存儲null值嗎
- 判斷鏈表有環
- synchronized鎖的升級過程
- concurrenthashmap和hashmap
- 索引失效的場景
- in()一定會使用到索引嗎
- 事務的傳播級別
- 項目中你做了什麼優化?這個可以好好講講
- mysql的緩存
用友kpi
- Hashmap的底層原理,有哪些遍歷方式?
- 你用過SpringCloud嗎?你用過哪些RPC
- 包裝類的底層需要去看看, Integer(100)和Long(100)相等嗎?
- 事務的隔離級別
- Spring有什麼優點
- concurrenthashmap的原理
上海華測導航技術
-
介紹
-
rabbitmq做一些什麼
-
redis數據類型,具體的用法
-
代理模式是什麼,代理模式的具體使用場景
-
你理解的hashmap
-
Spring的註解
-
Rabbitmq高可用
-
所以說進程和線程的區別?
-
線程池,哪些線程池,有哪些拒絕策略
-
各種設計模式
-
autowired和resource的區別
同花順
- Tcp頭部組成,tcp滑動窗口
- 數據量很大的情況下,數據庫要怎麼加快查詢呢
- 線程池,默認的幾種隊列,Java的幾個默認線程池
- RESTful風格?jwt的具體說說?
- Spring中用了那些設計模式,具體用在什麼地方
- 單例模式的使用方式?
- 怎麼樣使ArrayList線程安全呢?
- 索引的設置有什麼要求呢?
- 鎖的升級過程?
- 說一下自旋鎖?
- mybatisplus分頁插件實現原理,或者說mybatisplus的底層原理
- 工廠模式是用來幹嘛的?(設計模式問的好多,真得看看)
- servlet是用來幹嘛的? SpringMVC主要是幹什麼事情的?
- Spring的單例模式使用在哪裏?
- JVM垃圾回收機制?如何判斷需要回收?
交通銀行
-
你對設計模式的理解
-
創建線程的方式 , start run 哪個是啓動一個線程 線程池的優點是什麼
-
數據庫表優化的點
-
索引失效的點
-
談談你對軟件工程的理解,結合你所做的項目。
思維爆炸
-
rabbitmq的作用
-
sql如何進行一個優化呢
-
mybatis的一二級緩存
契約鎖
-
Jvm內存結構
-
項目如何實現策略模式的認證
-
線程池,過期時間的具體作用
-
如何判斷一個對線是否該被回收
-
索引失效
-
如何優化一個sql
-
hash索引和b+數索引有什麼區別
-
你理解的索引是什麼?
-
覆蓋索引是怎麼樣的
-
SpringBoot的自動裝配原理。
永贏金租
-
說一下Integer包裝類 兩個包裝類用== 比較會怎麼樣
-
redis的持久化
-
ThreadLocal的底層需要了解一下,底層的數據結構
-
redis持久化
-
hashmap底層原理
-
Spring的數據傳播行爲
-
如果項目在業務進行到一半宕機了你該怎麼做?
-
如何防止小說被爬
參考答案
由於問題太多,我這裏就不貼參考答案了,需要參考答案的朋友可以在下面 2 個資料中找到:
- 《Java 面試指北》
- JavaGuide 在線閱讀網站:https://javaguide.cn/