微服務+分散式+多執行緒+MyBatis +Spring:BATJ高頻面試249道題

java架構00發表於2020-10-22

前言:

本文收集整理了各大廠常見面試題N道,你想要的這裡都有內容涵蓋:Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、Redis、MySQL、Spring、Spring Boot、Spring Cloud、RabbitMQ、Kafka、Linux 等技術棧,希望大家都能找到適合自己的公司,開開心心的擼程式碼。

目錄:

由於題量較多,篇幅的限制,文章中的面試題分享沒有全部附上詳細的解析,但是整理成了一份詳細的PDF文件可分享給大家,文末獲取免費領取方式

 

看面試題可以是為了面試,也可以是對自己學到的東西的一種查漏補缺,更加深刻的去了解一些核心知識點

 

MyBatis 面試題

  1. 什麼是Mybatis?
  2. Mybatis的優點:
  3. Mybatis框架的缺點:
  4. Mybatis框架適用場合:
  5. MyBatis與Hibernate有哪些不同?
  6. #{}和${}的區別是什麼?
  7. 當實體類中的屬性名和表中的欄位名不一樣 ,怎麼辦 ?
  8. 模糊查詢like語句該怎麼寫?
  9. 通常一個Xml對映檔案,都會寫一個Dao介面與之對應,請問,這個Dao介面的工作原理
  10. 是什麼?Dao介面裡的方法,引數不同時,方法能過載嗎?
  11. Mybatis是如何進行分頁的?分頁外掛的原理是什麼?
  12. Mybatis是如何將sql執行結果封裝為目標物件並返回的?都有哪些對映形式?
  13. 如何執行批次插入?
  14. 如何獲取自動生成的(主)鍵值?
  15. Mybatis動態sql有什麼用?執行原理?有哪些動態sql?
  16. Xml對映檔案中,除了常見的select|insert|updae|delete標籤之外,還有哪些標籤?
  17. Mybatis的Xml對映檔案中,不同的Xml對映檔案,id是否可以重複?
  18. 為什麼說Mybatis是半自動ORM對映工具?它與全自動的區別在哪裡?
  19. MyBatis實現一對一有幾種方式?具體怎麼操作的?
  20. MyBatis實現一對多有幾種方式,怎麼操作的?
  21. Mybatis是否支援延遲載入?如果支援,它的實現原理是什麼?
  22. Mybatis的一級、二級快取:
  23. 什麼是MyBatis的介面繫結?有哪些實現方式?
  24. 使用MyBatis的mapper介面呼叫時有哪些要求?
  25. 簡述Mybatis的外掛執行原理,以及如何編寫一個外掛。

 

ZooKeeper 面試題

ZooKeeper 是一個開源的分散式協調服務,由雅虎建立,是 Google Chubby 的開源實現。分散式應用程式可以基於 ZooKeeper 實現諸如資料釋出/訂閱、負載均衡、命名服務、分散式協調/通知、叢集管理、Master 選舉、配置維護,名字服務、分散式同步、分散式鎖和分散式佇列等功能。

  • zookeeper 負載均衡和 nginx 負載均衡區別
  • Zookeeper Watcher 機制--資料變更通知
  • 客戶端註冊 Watcher 實現
  • zookeeper 是如何保證事務的順序一致性的?
  • Zookeeper 對節點的 watch監聽通知是永久的嗎?為什麼不是永久的?
  • zk 節點當機如何處理?

 

Dubbo 面試題

Spring Eureka 從開源轉變為閉源,Consul 正在崛起,而 Dubbo 又開始重新更新。目前市場上仍有不少公司使用dubbo我們也需要繼續學習。

  • 為什麼要用 Dubbo?
  • 預設使用的是什麼通訊框架,還有別的選擇嗎?
  • 服務呼叫是阻塞的嗎?
  • 一般使用什麼註冊中心?還有別的選擇嗎?
  • 預設使用什麼序列化框架,你知道的還有哪些?
  • Dubbo 的整體架構設計有哪些分層?

 

Elasticsearch 面試題

  • elasticsearch 瞭解多少,說說你們公司 es 的叢集架構,索引資料大小,分片有多少,以及一些調優手段 。
  • elasticsearch 索引資料多了怎麼辦,如何調優,部署
  • elasticsearch 是如何實現 master 選舉的
  • Elasticsearch 在部署時,對 Linux 的設定有哪些最佳化方法
  • 詳細描述一下 Elasticsearch 更新和刪除文件的過程。
  • Elasticsearch 在部署時,對 Linux 的設定有哪些最佳化方法?

Redis面試題

隨著應用研發技術的不斷成熟,Redis 快取技術已經成為後臺研發同學必備的能力之一。在很多公司面試的過程中,都必不可少地考察 Redis 知識點的掌握。

  • 使用 Redis 有哪些好處?
  • Redis 是單程式單執行緒的?
  • Redis 的持久化機制是什麼?各自的優缺點?
  • Redis 常見異常問題和解決方案(雪崩,穿透...)
  • redis 過期鍵的刪除策略?
  • 為什麼 redis 需要把所有資料放到記憶體中?
  • Redis 叢集的主從複製模型是怎樣的?
  • Redis key 的過期時間和永久有效分別怎麼設定?

 

MySQL 面試題

如今網際網路行業用的最多就是 MySQL,然而對於高階 Web 面試者,尤其對於尋找 30k 下工作的求職者,很多 MySQL 相關知識點基本都會涉及,如果面試中,你的相關知識答的模糊和不切要點,基本大多稍好公司的面試官,基本也不會對你有興趣,畢竟稍微量大的專案,最終都會讓你去深入資料庫,而且最終的大多瓶頸首先也會出現在資料庫。

  1. L 相關儲存引擎。
  2. MySQL 索引實現原理。
  3. MySQL 資料庫鎖。
  4. MySQL 的 SQL 調優。
  5. MySQL 分表分庫全域性 ID。
  6. Mysql的技術特點是什麼?
  7. Heap表是什麼?
  8. Mysql伺服器預設埠是什麼?
  9. 如何區分FLOAT和DOUBLE?
  10. 區分CHAR_LENGTH和LENGTH?
  11. 請簡潔描述Mysql中InnoDB支援的四種事務隔離級別名稱,以及逐級之間的區別?
  12. 在Mysql中ENUM的用法是什麼?
  13. 如何定義REGEXP?
  14. CHAR和VARCHAR的區別?
  15. Mysql查詢是否區分大小寫?
  16. Mysql中有哪些不同的表格?
  17. 什麼樣的物件可以使用CREATE語句建立?
  18. 什麼是通用SQL函式?
  19. MYSQL支援事務嗎?
  20. mysql裡記錄貨幣用什麼欄位型別好
  21. Mysql中有哪幾種鎖?
  22. MYSQL資料庫伺服器效能分析的方法命令有哪些?

 

Java 併發程式設計面試題

  1. 在 java 中守護執行緒和本地執行緒區別?
  2. 什麼是多執行緒中的上下文切換?
  3. Java 中用到的執行緒排程演算法是什麼?
  4. 什麼是執行緒組,為什麼在 Java 中不推薦使用?
  5. 在 Java 中 Executor 和 Executors 的區別?
  6. 併發程式設計三要素?
  7. 什麼是執行緒池?有哪幾種建立方式? 點這裡統統拿走

 

Spring 面試題

  1. 談談你對spring IOC 和 DI 的理解,它們有什麼區別?
  2. BeanFactory介面和 ApplicationContext 介面有什麼區
  3. Spring配置 bean 例項化有哪些方式?
  4. 簡單的說一下 spring 的生命週期?
  5. 請介紹一下 Spring 框架中 Bean 的生命週期和作用域
  6. Bean 注入屬性有哪幾種方式?
  7. 什麼是 AOP,AOP 的作用是什麼?
  8. Spring的核心類有哪些,各有什麼作用?
  9. Spring裡面如何配置資料庫驅動?
  10. Spring裡面 applicationContext.xml 檔案能不能改成其他 檔名?
  11. Spring裡面如何定義 hibernate mapping?
  12. Spring如何處理執行緒併發問題?
  13. 為什麼要有事物傳播行為?
  14. 介 紹 一 下Spring的 事物管理
  15. 解釋一下Spring AOP裡面的幾個名詞
  16. 通知有哪些型別?

 

面試答案彙總

Kafka面試題

  • Kafka 與傳統 MQ 訊息系統之間有三個關鍵區別?
  • 講一講 kafka 的 ack 的三種機制?
  • 消費者故障,出現活鎖問題如何解決?
  • kafka 分散式(不是單機)的情況下,如何保證訊息的順序消費?
  • kafka 如何不消費重複資料?比如扣款,我們不能重複的扣。

點這裡統統拿走

面試答案彙總

看完上面的內容,相信大家已經有了清晰的目標與方向,接下來就是查詢學習資料了,我們為大家準備了一套體系化的架構師學習資料包,供大家參考,學習資料包內容及領取方法如下: 點這裡統統拿走

作為Java開發者而已應當合理利用自己每一分每一秒的時間來學習提升自己,不要再用"沒有時間“來掩飾自己思想上的懶惰!趁年輕,使勁拼,給未來的自己一個交代!

領取方式:關注之後掃一掃,即可免費領取一份 Java進階面試寶典,微服務架構書籍


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69985897/viewspace-2728769/,如需轉載,請註明出處,否則將追究法律責任。

相關文章