一面(基礎面:約1小時)
- 自我介紹,主要講講作了什麼和擅長什麼
- springmvc和spring-boot區別
- @Autowired的實現原理
- Bean的默認做用範圍是什麼?其餘的做用範圍?
- 索引是什麼概念有什麼做用?MySQL裏主要有哪些索引結構?哈希索引和B+樹索引比較?
- Java線程池的原理?線程池有哪些?線程池工廠有哪些線程池類型,及其線程池參數是什麼?
- hashmap原理,處理哈希衝突用的哪一種方法?
- 還知道什麼處理哈希衝突的方法?
- Java GC機制?GC Roots有哪些?
- Java怎麼進行垃圾回收的?什麼對象會進老年代?垃圾回收算法有哪些?爲何新生代使用複製算法?
- HashMap的時間複雜度?HashMap中Hash衝突是怎麼解決的?鏈表的上一級結構是什麼?Java8中的
HashMap有什麼變化?紅黑樹須要比較大小才能進行插入,是依據什麼進行比較的?其餘Hash衝突解決方式?
- hash和B+樹的區別?分別應用於什麼場景?哪一個比較好?
- 項目裏有個數據安全的,aes和md5的區別?詳細點
二面(問數據庫較多:)
- 自我介紹
- 爲何MyISAM查詢性能好?
- 事務特性(acid)
- 隔離級別
- SQL慢查詢的常見優化步驟?
- 說下樂觀鎖,悲觀鎖(select for update),並寫出sql實現
- TCP協議的三次握手和四次揮手過程?
- 用到過哪些rpc框架
- 數據庫鏈接池怎麼實現
- Java web過濾器的生命週期
三面(綜合面;約一個小時)
- 自我介紹。
- ConcurrentHashMap 在Java7和Java8中的區別?爲何Java8併發效率更好?什麼狀況下用HashMap,什麼狀況用ConcurrentHashMap?
- 加鎖有什麼機制?
- ThreadLocal?應用場景?
- 數據庫水平切分,垂直切分的設計思路和切分順序
- Redis如何解決key衝突
- soa和微服務的區別?
- 單機系統演變爲分佈式系統,會涉及到哪些技術的調整?請從前面負載到後端詳細描述。
設計一個秒殺系統?
四面(HR面)
1.你本身最大優點和劣勢是什麼
2.平時碰見過什麼樣的挑戰,怎麼去克服的
3.工做中碰見了技術解決不了的問題,你的應對思路?
4.你的興趣愛好?
5.將來的職業規劃是什麼?程序員
以上就是京東4面面試題,但願對即將面試的程序員有所幫助。web