逆襲之王非我莫屬!從簡歷被拒到現在的阿里P7,我只作了如下幾件小事!

前言

本人狀況:雙非普通一本,JAVA後臺開發,第一次面試,面的不是很好...
項目相關:
簡單介紹本身作的項目以及特色
說說同時購物系統兩我的同時付款時如何處理?答了加鎖,還有消息隊列,可是好像不是面試官要的答案,直接說了不知道..
說一說淘寶系統如何處理高併發下客戶請求(這些都沒有複習過,以前有看過一些,可是太緊張了,一個都答不出來)
如何提升SQL查詢效率,在語句方面上的優化?
java

另外我這裏爲你們準備了一線大廠面試資料和我原創的超硬核PDF技術文檔,以及我爲你們精心準備的多套大廠面試題(不斷更新中),有須要的朋友點這裏備註csdn自行下載就好!但願你們都能找到心儀的工做!
在這裏插入圖片描述git

一面

  • 你 Java 是自學的嗎,仍是跟着學校課程學的,那你看的是哪一本書?
  • 有了解 Java 的設計模式嗎?
  • 你以爲 Spring 框架的 Listener 是什麼模式,你用過嗎?你對 Spring 的瞭解是經過什麼學習的呢?你能說一下 Listener 的執行順序嗎?
  • 你瞭解 Spring 的 AOP 編程嗎?那 AOP 有幾種切面?
  • 你經歷裏面比較自豪,或者說比較難的地方在哪裏?
  • 上一問我說對 Java 基礎和 MySQL 這塊看的比較多,而後繼續追問你知道 String 類型在 JVM 裏面是怎麼表現得嗎?
  • 你對 JVM 的堆棧有了解嗎?
  • String 類型的變量通常存在哪裏?這裏引出了常量池,而後開始了奪命四連問。
  • 若是我定義了一個 String 類型的私有成員 a1,我給他賦了一個初始值,好比說 "abc",而後我在另外一個類裏面,也有一個值爲 "abc" 的成員變量 a2,若是比較 a1 == a2,它會相等嗎?
  • 若是我在一個方法裏面定義了一個局部變量 a3,若是比較 a3 == a1,你以爲會相等嗎?
  • 若是 a4 = new String("abc"),你以爲這個 a4 會和 a3 相等嗎?
  • 那若是變量沒有 final 修飾,就是 public static String a5,我在構造函數裏面給 a5 賦值爲 "abc",你以爲它會和 a1 相等嗎?
  • 你這邊項目裏面寫的我的博客是你本科時候本身驗證測試的對吧?
  • Nginx 在你在網上看的博客學的嗎?那你能跟我說一下 Nginx 能作幾層代理的轉發嗎?它在 OSI 的第幾層?它除了應用層還有別的模式嗎?它可以代理 SSH 協議嗎?
  • 那應用層有什麼協議?
  • SSH 協議你知道它工做在哪一層嗎?
  • WebSocket 你知道工做在哪一層嗎?它跟 Socket 有什麼區別?
  • 你剛講到你在 DB 這一塊比較擅長,具體是哪一個 DB?你看了 MySQL 什麼書嗎?
  • MySQL 的主從你能講一講嗎?
  • MySQL 有什麼命令能夠拿到我當前卡住的 SQL?
  • 慢查詢日誌怎麼開?如何查看歷史的慢查詢語句?
  • 不開慢查詢的話,怎麼知道 MySQL 裏面哪裏語句執行比較久?
  • 你主要熟悉索引這一塊是吧,MySQL 的 text 字段能夠建索引嗎?那若是我只存幾個字符呢?它能設前綴索引嗎?若是不是前綴索引,就是全列索引,我用 LIKE 查詢,LIKE abc%,它會命中索引嗎?它爲何能命中索引,匹配順序是什麼樣的?若是 LIKE %abc,它會命中索引嗎?
  • MySQL 中 JSON 的數據格式有了解過嗎?
  • 你有了解 MySQL 8 的新特性嗎?
  • 你這裏 RPC 框架也是測試項目嗎?你有了解過業界的一些 RPC 框架嗎?尤爲是 Java 領域?
  • Java 的 RMI 你瞭解過嗎?
  • RMI 和 RPC 有什麼區別?
  • Java 的 JMX 瞭解過嗎?
  • Java 的 Bean 有了解過嗎?JavaBean 是什麼?JavaBean 要符合什麼樣的條件?
  • 你這邊有參加什麼比賽嗎?
  • 你對消息隊列有了解嗎?你瞭解過現有的消息隊列嗎?
  • 數據結構這一塊我問一個問題,若是我如今有一個矩陣運算,我但願你用 Java 來實現,你會怎麼去設計這個數據結構?運算過程怎麼運算?你以爲是用數組好仍是用 List 好?
  • Java 裏面,若是我要對一個 List 進行排序,你知道它內部是怎麼實現 sort() 方法的嗎?它裏面除了快排還有什麼排序?它經過什麼來判斷調用哪一種類型的排序?
  • 我看你這裏寫着喜歡關注一些新技術的發展動向,這一點我比較好奇在你眼裏什麼算是新技術,你會關注哪些方面?新技術就 Java?
  • 開始懟 Java 的版本了,ArrayList<Integer> list = new ArrayList<>(); 後面尖括號不用寫類型,這個特性是何時出現的?

Modules 描述文件你知道是何時出現的嗎?
永久代是在哪一個版本去掉的?MetaSpace 是何時出現的?MetaSpace 大小通常建議設置爲多少?它有可能會爆嗎?github

  • 若是物理機有 11G 內存,堆設置了 10G,MetaSpace 設置了 128M,它有可能發生 OOM 嗎?什麼狀況會發生?

對內存泄漏有了解嗎?面試

二面

  • 上來先來兩道算法題leetcode121買股票1和122買股票2(當時緊張了,第二個差點沒整出來,第一個還寫的n2的,沒優化出來,這塊花了20分鐘)
  • 項目裏面提到了用session,問了我session存在哪裏了。
  • 你據說過CSRF攻擊嗎,由於跟session有關。(攻擊者獲取到了用戶的session,而後僞造用戶請求。他說不太準確。過後查了一下:要讓客戶訪問虛假網站,而後瀏覽器默認會帶上cookie,虛假網站再直接向正規網站提交,僞造用戶請求)。
  • 你一面感受怎麼樣?我說沒問什麼基礎(我說出這,就感受不對頭,咋把實話說出來了。他就跟我說英雄無用武之地是吧,咱按照簡歷慢慢來)
  • 你跟我說說tcp三次握手爲何握三次?(謝希仁計算機網絡那個背了,不行。我又說爲了確認序列號,而後又來了幾個回合,也沒答明白。)
  • 手寫個單例吧,而後說說volatile什麼做用。
  • 線程池是什麼做用,爲何要用線程池,你說說線程池的幾個參數。
  • 說說java的GC。
  • 出了個sql題,怎麼建索引。有一個訂單表,有用戶的屬性和日期。如今有三個sql查詢,
  • 查某個用戶的全部訂單
  • 查某個date的全部訂單
  • 查某個用戶最近一個月的全部訂單
  • 當時我說建三個索引,後來反問的時候,他提醒了我一下最左前綴,我才反應過來,兩個就夠。(date和id-date)
  • 反問:什麼部門?飛書。
  • 真的很快嗷,十分鐘後hr就來電話,告訴我經過了。

三面

  • (僅記錄沒有回答上來的,可能有些漏掉了)
  • 擴展類加載器加載什麼
  • .雙親委派機制能夠打破嗎,如何打破
  • 索引的最左前綴
  • git的本地倉庫和遠程倉庫
  • 後來查的:在本地使用git init創建了一個倉庫A,就是本地倉庫
  • 在github上創建的倉庫就是遠程倉庫
  • .JMM
  • 內存溢出遇到過嗎
  • 線程池的建立流程是怎樣的(線程池的實現原理)
  • CMS垃圾回收器
  • 你用的哪一個垃圾回收器
  • .AQS瞭解嗎
  • ArrayList和LinkedList怎樣實現線程安全
  • 線程安全的list還有哪些,說了一個,問我還有嗎
  • .遇到過事務失效的狀況沒
  • .HashMap線程不安全問題,我說jdk1.7擴容會形成死循環,問我死循環的具體流程講一下
  • .MySQL如何實現可重複讀
  • 重寫equals方法須要重寫hashcode方法嘛(這塊部分我回答的有點繁瑣,下來我再看一下)

總結

最後我爲你們準備了ava核心知識點+全套架構師學習資料和視頻+一線大廠面試寶典+面試簡歷模板+阿里美團網易騰訊小米愛奇藝快手嗶哩嗶哩面試題+Spring源碼合集+Java架構實戰電子書一塊兒免費分享給你們!
有須要的朋友點這裏備註csdn自行下載就好
在這裏插入圖片描述
在這裏插入圖片描述算法

相關文章
相關標籤/搜索