上海諾西Java面試題


1.外連接和子查詢區別

       外連接和子查詢最大的區別就在於外連接使用的join不需要在內存中創建臨時表,效率比子查詢高。
2.String的equals方法

     https://blog.csdn.net/qq_25827845/article/details/53868815
3.Mybatis的兩種實現方式

       1)註解

        2).xml文件配置


4.Http和RPC區別

        RPC 跟 http 不是一個層次的概念。RPC 是 遠程過程調用,RPC 包含傳輸協議和編碼協議。http是超文本傳輸協議,RPC 也可以用http作爲傳輸協議,但一般是用 tcp作爲傳輸協議。用json作爲編碼協議。RPC的主要用在內部服務間的通信。我們常說的微服務架構就要用到RPC.
原文:https://blog.csdn.net/wangpengzhi19891223/article/details/81012443 

5.Dubbo與springcloud區別

       https://blog.csdn.net/anningzhu/article/details/76599875

      1)dubbo由於是二進制的傳輸,佔用帶寬會更少
      2)springCloud是http協議傳輸,帶寬會比較多,同時使用http協議一般會使用JSON報文,消耗會更大

      3)dubbo的開發難度較大,原因是dubbo的jar包依賴問題很多大型工程無法解決

      4)springcloud的接口協議約定比較自由且鬆散,需要有強有力的行政措施來限制接口無序升級

      5)dubbo的註冊中心可以選擇zk,redis等多種,springcloud的註冊中心只能用eureka或者自研(具體怎樣我也不太清楚,看了           很多資料上有的說springcloud註冊中心也可以用zookeeper,但是有的說需要自研,有懂得大神可以解答下)

6.hashmap底層原理

      1)底層結構是數組+鏈表+紅黑樹,根據元素key的hash值對數組長度取模。得到存儲位置。數組是Entry[],

      2)hash碰撞就是兩個對象的key的hashCode值一樣,將數據採用鏈表的形式存儲在相同的Entry[]節點,獲取時通過equals遍歷節點上的每個key,獲取value。

7.String與StringBuffer,StringBuilder的區別?

      1)String是不可類,不適用於經常修改;

       2)StringBuffer和StringBuilder是字符串緩衝區,使用於經常修改的對象,但是StringBuffer是線程安全的,StringBuilder是線程不安全的,StringBuilder效率相對於StringBuffer較高,但是安全性不高,當不需要再進行修改的時候,可以直接用tostring方法將結果轉成String類。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章