java

阿里面試Java必問題360道解析(JVM+mysql+Netty+spring+框架)

前言

阿里面試Java必問題360道解析(JVM+mysql+Netty+spring+框架)

 

正逢金三銀四,很多人面試之前,可能沒有在網際網路公司工作過或者說工作過但年頭較短,不知道網際網路公司技術面試都會問哪些問題? 再加上可能自己準備也不充分,去面試沒幾個回合就被面試官幾個問題打蒙了,最後以慘敗收場。針對大家的這些問題,我整理了+開源框架+netty+++dubbo+netty+mybatis的大廠真題和解答。看完之後希望對你有一定的幫助。

阿里面試Java必問題360道解析(JVM+mysql+Netty+spring+框架)

 

所有的資料都整理一個文件裡面了,文中沒有將所有答案都列舉出來,需要資料私信小編:【架構資料】

JVM:

  1. 記憶體模型以及分割槽,需要詳細到每個區放什麼。
  2. 堆裡面的分割槽:Eden,survival (from+ to),老年代,各自的特點。
  3. 物件建立方法,物件的記憶體分配,物件的訪問定位。
  4. GC 的兩種判定方法:
  5. SafePoint 是什麼
  6. GC 的三種收集方法:標記清除、標記整理、複製演算法的原理與特點,分別用 在什麼地方,如果讓你最佳化收集方法,有什麼思路?
  7. GC 收集器有哪些?CMS 收集器與 G1 收集器的特點。
  8. Minor GC 與 Full GC 分別在什麼時候發生?
  9. 幾種常用的記憶體除錯工具:jmap、jstack、jconsole、jhat
  10. 類載入的幾個過程:
  11. JVM 記憶體分哪幾個區,每個區的作用是什麼?
  12. 如和判斷一個物件是否存活?(或者 GC 物件的判定方法)
  13. 簡述 垃圾回收機制?
  14. java 中垃圾收集的方法有哪些?
  15. java 記憶體模型
  16. java 類載入過程?
  17. 簡述 java 類載入機制?
  18. 類載入器雙親委派模型機制?
  19. 什麼是類載入器,類載入器有哪些?
  20. 簡述 java 記憶體分配與回收策率以及 Minor GC 和 Major GC

開源框架:

  1. BeanFactory 和 ApplicationContext 有什麼區別
  2. Spring Bean 的生命週期
  3. Spring IOC 如何實現
  4. 說說 Spring AOP
  5. Spring AOP 實現原理
  6. 動態代理(cglib 與
  7. Spring 事務實現方式
  8. Spring 事務底層原理
  9. 如何自定義註解實現功能
  10. Spring MVC 執行流程
  11. Spring MVC 啟動流程
  12. Spring 的單例實現原理
  13. Spring 框架中用到了哪些設計模式

Netty

  1. 為什麼選擇 Netty
  2. 說說業務中,Netty 的使用場景
  3. 原生的 NIO 在 JDK 1.7 版本存在 epoll bug
  4. 什麼是 TCP 粘包/拆包
  5. TCP 粘包/拆包的解決辦法
  6. Netty 執行緒模型
  7. 說說 Netty 的零複製
  8. Netty 內部執行流程

spring

  1. 什麼是 Spring 框架?Spring 框架有哪些主要模組?
  2. 使用 Spring 框架能帶來哪些好處?
  3. 什麼是控制反轉(IOC)?什麼是依賴注入?
  4. 請解釋下 Spring 框架中的 IoC?
  5. BeanFactory 和 ApplicationContext 有什麼區別?
  6. Spring 有幾種配置方式?
  7. 如何用基於 XML 配置的方式配置 Spring?
  8. 如何用基於 Java 配置的方式配置 Spring?
  9. 怎樣用註解的方式配置 Spring?
  10. 請解釋 Spring Bean 的生命週期?
  11. Spring Bean 的作用域之間有什麼區別?
  12. 什麼是 Spring inner beans?
  13. Spring 框架中的單例 Beans 是執行緒安全的麼?
  14. 請舉例說明如何在 Spring 中注入一個 Java Collection?
  15. 如何向 Spring Bean 中注入一個 Java.util.Properties?
  16. 請解釋 Spring Bean 的自動裝配?
  17. 請解釋自動裝配模式的區別?
  18. 如何開啟基於註解的自動裝配?
  19. 請舉例解釋@Required 註解?
  20. 請舉例解釋@Autowired 註解?
  21. 請舉例說明@Qualifier 註解?
  22. 構造方法注入和設值注入有什麼區別?
  23. FileSystemResource 和 ClassPathResource 有何區別?
  24. Spring 框架中都用到了哪些設計模式?

mysql

  1. 一張表,裡面有 ID 自增主鍵,當 insert 了 17 條記錄之後,刪除了第 15,16,17 條記錄, 再把 Mysql 重啟,再 insert 一條記錄,這條記錄的 ID 是 18 還是 15 ?
  2. Mysql 的技術特點是什麼?
  3. Heap 表是什麼?
  4. Mysql 伺服器預設埠是什麼?
  5. 與 Oracle 相比,Mysql 有什麼優勢?
  6. 如何區分 FLOAT 和 DOUBLE?
  7. 區分 CHAR_LENGTH 和 LENGTH?
  8. 請簡潔描述 Mysql 中 InnoDB 支援的四種事務隔離級別名稱,以及逐級之間的區別?
  9. 在 Mysql 中 ENUM 的用法是什麼?
  10. 如何定義 REGEXP?
  11. CHAR 和 VARCHAR 的區別?
  12. 列的字串型別可以是什麼?
  13. 如何獲取當前的 Mysql 版本?
  14. Mysql 中使用什麼儲存引擎?
  15. Mysql 驅動程式是什麼?
  16. TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 資料型別上做什麼?
  17. 主鍵和候選鍵有什麼區別?
  18. 如何使用 Unix shell 登入 Mysql?
  19. myisamchk 是用來做什麼的?
  20. MYSQL 資料庫伺服器效能分析的方法命令有哪些?

Dubbo

  1. Dubbo 支援哪些協議,每種協議的應用場景,優缺點?
  2. Dubbo 超時時間怎樣設定?
  3. Dubbo 有些哪些註冊中心?
  4. Dubbo 叢集的負載均衡有哪些策略 
  5. Dubbo 是什麼?
  6. Dubbo 的主要應用場景?
  7. Dubbo 的核心功能?
  8. Dubbo 的核心元件?
  9. Dubbo 服務註冊與發現的流程?
  10. Dubbo 的架構設計?
  11. Dubbo 支援哪些協議,每種協議的應用場景,優缺點?
  12. Dubbo 有些哪些註冊中心?
  13. Dubbo 預設採用註冊中心?
  14. 為什麼需要服務治理?

netty

  1. BIO、NIO 和 AIO 的區別?
  2. NIO 的組成?
  3. Netty 的特點?
  4. Netty 的執行緒模型?
  5. TCP 粘包/拆包的原因及解決方法?
  6. 瞭解哪幾種序列化協議?
  7. 如何選擇序列化協議?
  8. Netty 的零複製實現?
  9. Netty 的高效能表現在哪些方面?
  10. NIOEventLoopGroup 原始碼?

mybatis

  1. 什麼是 MyBatis?
  2. 講下 MyBatis 的快取
  3. Mybatis 是如何進行分頁的?分頁外掛的原理是什麼?
  4. 簡述 Mybatis 的外掛執行原理,以及如何編寫一個外掛?
  5. Mybatis 動態 是做什麼的?都有哪些動態 ?能簡述一下動態 的執行原理不?
  6. #{}和${}的區別是什麼?
  7. 為什麼說 Mybatis 是半自動 ORM 對映工具?它與全自動的區別在哪裡?
  8. Mybatis 是否支援延遲載入?如果支援,它的實現原理是什麼?
  9. MyBatis 與 Hibernate 有哪些不同?
  10. MyBatis 的好處是什麼?
  11. 簡述 Mybatis 的 Xml 對映檔案和 Mybatis 內部資料結構之間的對映關係?
  12. 什麼是 MyBatis 的介面繫結,有什麼好處?
  13. 介面繫結有幾種實現方式,分別是怎麼實現的?
  14. 什麼情況下用註解繫結,什麼情況下用 xml 繫結?
  15. MyBatis 實現一對一有幾種方式?具體怎麼操作的?
  16. Mybatis 能執行一對一、一對多的關聯查詢嗎?都有哪些實現方式,以及它們之間的區別?
  17. MyBatis 裡面的動態 Sql 是怎麼設定的?用什麼語法?
  18. Mybatis 是如何將 sql 執行結果封裝為目標物件並返回的?都有哪些對映形式?
  19. Xml 對映檔案中,除了常見的 select|insert|updae|delete 標籤之外,還有哪些標籤?
  20. 當實體類中的屬性名和表中的欄位名不一樣,如果將查詢的結果封裝到指定 pojo?
  21. 模糊查詢 like 語句該怎麼寫
  22. 通常一個 Xml 對映檔案,都會寫一個 Dao 介面與之對應, Dao 的工作原理,是否可以過載?
  23. Mybatis 對映檔案中,如果 A 標籤透過 include 引用了 B 標籤的內容,請問,B 標籤能否定義在 A 標籤的後面,還是說必須定義在 A 標籤的前面?
  24. Mybatis 的 Xml 對映檔案中,不同的 Xml 對映檔案,id 是否可以重複?
  25. Mybatis 中如何執行批處理?
  26. Mybatis 都有哪些 Executor 執行器?它們之間的區別是什麼?
  27. Mybatis 中如何指定使用哪一種 Executor 執行器?
  28. Mybatis 執行批次插入,能返回資料庫主鍵列表嗎?
  29. Mybatis 是否可以對映 Enum 列舉類?
  30. 如何獲取自動生成的(主)鍵值?
  31. 在mapper中如何傳遞多個引數?
  32. Java核心知識點整理;

阿里面試Java必問題360道解析(JVM+mysql+Netty+spring+框架)

 

除去這些還有很多面試真題還有影片資料,學習筆記,電子書籍都不在這裡一一給大家列舉出來了,需要的小夥伴可以私信【架構資料】加群獲取 所有的資料。

阿里面試Java必問題360道解析(JVM+mysql+Netty+spring+框架)

 

阿里面試Java必問題360道解析(JVM+mysql+Netty+spring+框架)

 

 

本文章已修改原文用詞符合繁體字使用者習慣使其容易閱讀

版權宣告:此處為CSDN博主「妖精的雜貨鋪」的原創文章,依據CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。

原文連結:https://blog.csdn.net/weixin_51204715/article/details/109134514