原创 Java:new一個對象的過程中發生了什麼?

java在new一個對象的時候,會先查看對象所屬的類有沒有被加載到內存,如果沒有的話,就會先通過類的全限定名來加載。加載並初始化類完成後,再進行對象的創建工作。 我們先假設是第一次使用該類,這樣的話new一個對象就可以分爲兩個過程

原创 Session講解

文章目錄session原理講解session的使用當客戶端關閉後,服務端不關閉,兩次獲取的session是否爲同一個?客戶端不關閉,服務器關閉後,兩次獲取的session是同一個嗎session失效時間Session的特點 ses

原创 安全的發佈對象:單例模式

  作爲最常用的設計模式——單例模式,是平常最常用的,也是面試最常問的。在上一節中講到了對象的發佈與逃逸,如何安全的發佈對象?單例模式給出了答案。單例模式的應用非常廣,在連接池,線程池,以及Spring框架中的所有類,都是單例模式

原创 SpringMVC跨服務器文件上傳

  上一次講解了SpringMVC對於傳統文件的上傳,SpringMVC主要完成了對request請求的解析。這一節來講解SpringMVC如何跨服務器進行文件上傳   爲什麼需要跨服務器進行文件上傳?原因爲了使我們服務器能專一併

原创 紅黑樹講解及實現(Java)

  紅黑樹作爲二叉樹的難點,一直是面試中的加分項,今天一起來看一下 文章目錄認識紅黑樹紅黑樹的性質左旋右旋操作增加節點根父節點是黑色的父節點是紅色的,與父節點在一側,叔叔節點是黑色的父節點是紅色的,與父節點不在同一側,叔叔節點是黑

原创 索引的底層原理——B樹,B+樹

  在文件存儲系統中,會使用到B樹來進行存儲,爲什麼要這樣做?這樣做的原因是什麼?   如果我們在很多數據中去查詢一條數據,逐一進行比較是最容易想到的辦法,逐一進行比較的算法時間複雜度是O(n),似乎是慢了點。這時我們就想到了AV

原创 面試必問:JDK7 超詳細ConcurrentHashMap源碼解析

文章目錄繼承結構數據結構基本屬性構造函數常用方法putscanAndLockForPutremovegetsizeContainsValue增長方式(擴容)設計思想       ConcurrentHashMap是JUC下的類,可

原创 C/S模型:TCP,UDP構建客戶端和服務器端(BIO實現)

Java中提供了socket編程來構建客戶端和服務器端 TCP 構建服務器端的步驟: bind:綁定端口號 listen:監聽客戶端的連接請求 accept:返回和客戶端連接的實例 read/write:進行讀寫操作,也就是和客

原创 使用goimports自動格式化代碼

引入goimports go get golang.org/x/tools/cmd/goimports 在File Watchers中添加 測試 ctrl+s保存代碼,查看格式變化

原创 go語言實現迷宮的廣度優先遍歷

  迷宮的求解是非常常見的問題了,今天這裏記錄使用go語言來完成廣度優先遍歷   要求時從文件中讀出一個數字矩陣,0表示可以通行,1表示不可以。要求給出一條路徑從左上角到右下角,使得路徑的長度最短,可以使用6來標識路徑,比如:

原创 go中的Fscanf讀到0的問題

今天在使用Fscanf讀矩陣的時候遇到了一個問題,發現每次遇到換行,就多讀一個0的問題 func readMaze(filename string) [][]int { file, err := os.Open(filename

原创 SpringMVC異常處理

  在平常的代碼中,難免會有異常的產生,如果異常不進行處理,就會默認上拋,最終從Controller拋到前端控制器,前端控制器又會直接將異常拋到頁面,給用戶的體驗很差,界面很不友好。SpringMVC提供了異常處理的機制,對拋出的

原创 SpringMVC攔截器

SpringMVC中的攔截器和Servlet中的過濾器效果類似,都是在Controller前面後者後面做一些事情,但是兩者也有一些區別: 過濾器可以應用於所有的web技術, 包括SpringMVC,但是攔截器是SpringMVC

原创 解決request的中文亂碼問題

post請求,通過設置方法來進行 通過request來進行設置 request.setCharacterEncoding("UTF-8"); 如果是Get請求,則需要逐一對參數進行轉碼 過濾器設置編碼 在SpringMVC中提供

原创 JavaWeb傳統文件上傳方式

  先說一下傳統文件上傳的原理,上傳文件是將form表單的類型改爲上傳文件的類型,而且只能使用post格式,因爲get太短,不足以放下文件。在請求正文中,會以分割的形式來傳送文件,服務器端在接受到文件請求後,通過解析request