裝箱:裝箱在值類型向引用類型轉換時發生。值類型是要放在棧上的,引用類型它需要放在堆上。 拆箱:拆箱在引用類型向值類型轉換時發生。 臟讀:臟讀是針對事物操作來說的,只有在A,B兩個事物時,A事物對一個值做了修改操作,但是沒有提交事物,這個時候,B事物讀取了A事物的修改值,但是A事物有對這個修改做了取消 ...
裝箱:裝箱在值類型向引用類型轉換時發生。值類型是要放在棧上的,引用類型它需要放在堆上。
拆箱:拆箱在引用類型向值類型轉換時發生。
臟讀:臟讀是針對事物操作來說的,只有在A,B兩個事物時,A事物對一個值做了修改操作,但是沒有提交事物,這個時候,B事物讀取了A事物的修改值,但是A事物有對這個修改做了取消,這個時候B就是臟讀。
也可以劣跡物一個事物讀取其他完成一半的事物記錄時,就會發生臟讀。
悲觀鎖(Pessimistic Lock): 顧名思義,就是很悲觀,每次去拿數據的時候都認為別人會修改,所以每次在拿數據的時候都會上鎖,這樣別人想拿這個數據就會block直到它拿到鎖。
傳統的關係型資料庫裡邊就用到了很多這種鎖機制,比如行鎖,表鎖等,讀鎖,寫鎖等,都是在做操作之前先上鎖。
樂觀鎖(Optimistic Lock): 顧名思義,就是很樂觀,每次去拿數據的時候都認為別人不會修改,所以不會上鎖,但是在更新的時候會判斷一下在此期間別人有沒有去更新這個數據,可以使用版本號等機制。
樂觀鎖適用於多讀的應用類型,這樣可以提高吞吐量,像資料庫如果提供類似於write_condition機制的其實都是提供的樂觀鎖。
隔離級別:串列(serializable):不會出現任何併發性問題,可重覆讀(repeatable read):可能出現幻讀,已提交讀(read committed):可能出現幻讀和不可重覆讀,解決了臟讀和更新丟失。未提交讀(read uncommitted):可能出現所有併發性問題。
代碼鎖(lock):就是你在代碼內或者方法 鎖主當前包含在內的代碼段每次代碼段只允許一個線程訪問,其他線程都要在外面等待。
反射:反射提供了封裝程式集、模塊和類型的對象(Type 類型)。可以使用反射動態創建類型的實例,將類型綁定到現有對象,或從現有對象獲取類型並調用其方法或訪問其欄位和屬性。
SOAP:SOAP即簡單對象訪問協議(Simple Object Access Protocol),它是用於交換XML(標準通用標記語言下的一個子集)編碼信息的輕量級協議。
它有三個主要方面:XML-envelope為描述信息內容和如何處理內容定義了框架,將程式對象編碼成為XML對象的規則,執行遠程過程調用(RPC)的約定。
SOAP可以運行在任何其他傳輸協議上。例如,你可以使用 SMTP,即網際網路電子郵件協議來傳遞SOAP消息,這可是很有誘惑力的。在傳輸層之間的頭是不同的,但XML有效負載保持相同。
AOP(Aspect Oriented Programming):面向切麵編程,AOP主要實現的目的是針對業務處理過程中的切麵進行提取,它所面對的是處理過程中的某個步驟或階段,以獲得邏輯過程中各部分之間低耦合性的隔離效果。
OOP(Object Oriented Programming):面向對象編程,5大概念組件:組件,抽象性,封裝,繼承,多態。
XML:擴展標記語言 (Extensible Markup Language, XML) ,用於標記電子文件使其具有結構性的標記語言,可以用來標記數據、定義數據類型,是一種允許用戶對自己的標記語言進行定義的源語言。
XML是標準通用標記語言 (SGML) 的子集,非常適合 Web 傳輸。XML 提供統一的方法來描述和交換獨立於應用程式或供應商的結構化數據
JSON:JSON(JavaScript Object Notation)一種輕量級的數據交換格式,具有良好的可讀和便於快速編寫的特性。可在不同平臺之間進行數據交換。JSON採用相容性很高的、完全獨立於語言文本格式。這些特性使JSON成為理想的數據交換語言。