標籤:arch ref 樂觀鎖 資料庫 tis 解決 使用者 參考 view
近期考慮換工作的問題,於是投簡曆面試,面試5家公司的進階Java工程師,有4家給了我offer,想著總結一下面試經驗,方便最近正在尋求機會的你們
一、無筆試題 不知道是不是職位原因還是沒遇到,面試時,都不需要做筆試題,而是填張個人資訊表格,或者直接面試 二、三大架構方面問題 1、Spring 事務的隔離性,並說說每個隔離性的區別解答:Spring事務詳解
2、Spring事務的傳播行為,並說說每個傳播行為的區別解答:Spring事務詳解
3、hibernate跟Mybatis/ ibatis 的區別,為什麼選擇?解答:Hibernate與Mybatis的比較
4、Struts跟Spring mvc的優缺點,讓你選會如何選解答:Spring MVC 與 Struts的區別
5、簡單說說Spring 事務機制解答:Spring事務機制
6、Spring 4.0新特性解答:Spring4新特性 三、負載平衡、叢集相關1、weblogic 負載平衡的原理和叢集的配置解答:a、WEBLOGIC負載平衡原理 b、負載平衡和叢集的配置(參考)
2、Nginx+Tomcat+Redis實現負載平衡、資源分離、session共用 解答:配置參考
3、nginx設定檔詳解——nginx.conf解答:Nginx設定檔詳細說明 四、項目最佳化相關1、web如何項目最佳化解答:這個我整理過一次,web項目效能最佳化(整理)
2、單例模式有幾種? 如何最佳化?解答:單例模式的7中用法
3、簡單說說線程池的原理和實現解答:線程原理及實現 五、並發和安全方面1、項目並發如何處理?(我們是web項目)解答:高並發量網站解決方案,另外,還有資料庫樂觀鎖,資料庫讀寫分離、使用訊息佇列、多用預存程序等等
2、簡單說說功能許可權存在的水平許可權漏洞和垂直許可權漏洞的情境和解決辦法(因為我們目前權限等級就是功能許可權)解答:
A、水平許可權漏洞,如
假設機構有 使用者A和使用者B 兩個使用者,其中A有1、2和3許可權 , 使用者B有 2 和3 的許可權,這時候假設使用者B 知道1,並給自己添加1的許可權,這時候就是水平許可權漏洞。
目前解決辦法:1、限制入口,讓使用者B無法編輯自己的許可權 2、對使用者B無法進行向上擴充。最根本的解決辦法是深入到資料許可權
解答:水平許可權漏洞和解決辦法
B、垂直許可權漏洞
解答:垂直許可權漏洞案例和解決方案
3、平台上的圖片如何防盜鏈解答:http下載防盜鏈原理:http協議的欄位referer記錄來實現
4、如何區分上傳的圖片是不是木馬?解答:1、看上傳的圖片尾碼 2、如何尾碼是篡改的,那麼每個檔案有個魔術數字 檔案上傳-魔術數字
5、訊息佇列的原理和實現解答:1、訊息佇列原理 2、深入淺出 訊息佇列 ActiveMQ
六、資料庫方面1、mysql查詢欄位區不區分大小寫?
解答:不區分,哪怕值也不區分(我當時還反問了,區不區分大小的應用含義有哪些,面試官沒說得出來)
2、簡單說說資料庫叢集和負載平衡、分布式(我不懂這塊)
解答:資料庫負載平衡和叢集參考 ,參考2
3、預存程序的結構和優點
解答:大概結構
預存程序的優缺點
4、觸發器的原理和作用
解答:參考
面試題總結——走向JAVA進階工程師