原创 深入解析spring中用到的九種設計模式

Spring作爲業界的經典框架,無論是在架構設計方面,還是在代碼編寫方面,都堪稱行內典範。好了,話不多說,開始今天的內容。 spring中常用的設計模式達到九種,我們舉例說明: 第一種:簡單工廠 又叫做靜態工廠方法(StaticFacto

原创 原子(Atom)操作的實現原理

1. 引言 原子(atom)本意是“不能被進一步分割的最小粒子”,而原子操作(atomic operation)意爲"不可被中斷的一個或一系列操作" 。在多處理器上實現原子操作就變得有點複雜。本文讓我們一起來聊一聊在 Intel 處理器和

原创 Java堆分代以及對象分配

堆分代  Java虛擬機根據對象存活的週期不同,把堆內存劃分爲幾塊,一般分爲新生代、老年代和永久代(對HotSpot虛擬機而言),這就是JVM的內存分代策略。        1.爲什麼要分代?        堆內存是虛擬機管理的內存中最大

原创 Cookie和Session的機制

一.Cookie機制 Cookie技術是客戶端的解決方案,Cookie就是由服務器發給客戶端的特殊信息,而這些信息以文本文件的方式存放在客戶端,然後客戶端每次向服務器發送請求的時候都會帶上這些特殊的信息。讓我們說得更具體一些:當用戶使用瀏

原创 強類型,弱類型,靜態類型,動態類型的區別

相關術語: Program Errors trapped errors。導致程序終止執行,如除0,Java中數組越界訪問 untrapped errors。 出錯後繼續執行,但可能出現任意行爲。如C裏的緩衝區溢出、Jump到錯誤地址 Fo

原创 java中常用的幾種緩存

在平時的開發中會經常用到緩存,比如locache、redis等,但一直沒有對緩存有過比較全面的總結。下面從什麼是緩存、爲什麼使用緩存、緩存的分類以及對每種緩存的使用分別進行分析,從而對緩存有更深入的瞭解。 1.什麼是緩存 在使用緩存前我們

原创 Java:值傳遞還是引用傳遞?

值傳遞:方法調用時,實際參數把它的值的副本傳遞給對應的形式參數。特點:此時內存中存在兩個相等的基本類型,即實際參數和形式參數,後面方法中的操作都是對形參這個值的修改,不影響實際參數的值。 引用傳遞:方法調用時,實際參數的引用(地址,而不是

原创 Java對象的序列化和反序列化

一、序列化和反序列化的概念   把對象轉換爲字節序列的過程稱爲對象的序列化。   把字節序列恢復爲對象的過程稱爲對象的反序列化。   對象的序列化主要有兩種用途:   1) 把對象的字節序列永久地保存到硬盤上,通常存放在一個文件中;   

原创 對比分析抽象類和接口

1.抽象類 抽象類是用來捕捉子類的通用特性的 。它不能被實例化,只能被用作子類的超類。抽象類是被用來創建繼承層級裏子類的模板。以JDK中的GenericServlet爲例: 1 2 3 4 5 6 7 8 9 public abst

原创 對比分析Array & ArrayList & LinkedList

1.Array 數組在內存中是連續存儲的,所以它的索引速度非常快,而且賦值與修改元素也很簡單。 數組聲明與初始化 //聲明一維數組 int[] arr=new int[5]; //初始化一維數組 int[]

原创 對比分析HashTable & HashMap & ConcurrentHashMap

HashTable 底層數組+鏈表實現,無論key還是value都不能爲null,線程安全,實現線程安全的方式是在修改數據時鎖住整個HashTable,效率低,ConcurrentHashMap做了相關優化 初始size爲11,擴容:ne

原创 HashMap實現原理以及JDK8對HashMap做了怎樣的優化

HashMap 是一個散列表,它存儲的內容是鍵值對(key-value)映射。 HashMap 繼承於AbstractMap,實現了Map、Cloneable、java.io.Serializable接口。 HashMap 的實現不是同步

原创 基於Maven的SSM框架搭建示例

之前,在公司一直用的是SSM框架,今天難得有興致搭建一個基於Maven的SSM框架。期間也遇到一些小問題,但都解決了,希望能給後來的學習者一些幫助。畢竟當前熱門的SpringBoot框架都是基於Spring,Spring MVC等框架的。

原创 Apache ab安裝以及進行併發測試

1.下載httpd(地址:http://httpd.apache.org/download.cgi#apache24) 2.解壓並編譯 tar -zxvf httpd-2.4.29.tar.bz2 ./configure --pref

原创 BIO/僞異步IO/NIO/AIO四種IO模型比較

一直對幾種IO模型搞得懵懵懂懂,所以想對幾種IO模型做個比較,然後進行歸納總結其各自的優缺點!如有不足和錯誤之處,望指出! 1.BIO模型(同步阻塞IO模型) BIO模型特點:一連接一線程,一請求一應答,缺乏彈性伸縮能力 比如tomca