原创 數據庫進階(文件的組織方式和索引)

數據庫中文件的組織方式 數據庫的組織要考率更新和檢索的需求,更新涉及到數據的存儲空間的擴展和回收的問題,檢索涉及到掃描整個數據庫,和大批量處理數據的問題,不同的需求要求不同的數據組織方式和存取方式。 數據的組織方法是指數據組成記錄

原创 Spring隨筆(IOC/DI 及注入方式)

爲什麼要使用Spring,優點是什麼? 1.高內聚低耦合,簡化開發 spring是一個大工廠(容器),可以將對象的創建和依賴關係的維護全部交給spring管理。 2.支持Aop編程 方便對程序的權限攔截和運行性能進行監控

原创 MyBaits緩存原理(源碼級跟蹤)

數據緩存的作用 緩存:當用戶量十分巨大,高併發執行的時候,將用戶經常查詢的數據放到緩存(內存)中,用戶查詢數據就無需再到磁盤(數據庫)中查詢,也就是說無需再創建MappedStatement對象,從而 減輕服務器的壓力。提升系統的

原创 spring隨筆(AOP)

AOP術語 1.target:目標類,需要被代理的類。例如:UserService 2.Joinpoint(連接點):所謂連接點是指那些可能被攔截到的方法。例如:所有的方法 3**.PointCut** 切入點:已經被增強的連

原创 spring隨筆(Junit 和web)

在web中配置spring 在web中有兩種配置spring的方式: 1. ContextLoaderListener 通過spring監聽 <!-- 配置spring 監聽器,加載xml配置文件 --> <listener>

原创 spring 隨筆(體系結構和生命週期)

spring體系結構 主要api BeanFactoy 一個工廠,用於生成任意Bean,負責讀取bean配置文檔,管理bean的加載,實例化,維護bean之間的依賴關係,負責bean的聲明週期。特點是延遲加載,只有在第一次get

原创 springMVC隨筆(爲什麼要使用SpringMVC)

爲什麼要使用SpringMVC 爲什麼要使用springMVC?他的出現解決了什麼問題? 首先回顧一下WebMVC: 如果沒有MVC設計模式。程序間的各層之間依賴非常強,耦合度高。嚴重違背了高內聚低耦合的設計原則。而Web

原创 TCP的全連接和半連接隊列

TCP的全連接和半連接隊列 當服務端調用listen函數監聽端口的時候,內核會爲每個監聽的socket創建兩個隊列: 半連接隊列(syn queue):客戶端發送SYN包,服務端收到後回覆SYN+ACK後,服務端進入SYN_RC

原创 併發隨筆(JUC開發包之重入鎖)

JDK併發包(JUC) Condition 將 Object 監視器方法(wait、notify 和 notifyAll)分解成截然不同的對象,以便通過將這些對象與任意 Lock 實現組合使用,爲每個對象提供多個等待 set(w

原创 初識TCP

1. TCP協議的概念 TCP是TCP/協議簇中最重要也是最複雜協議,它位於OSI七層協議模型的網絡層,它提供了一種全雙工的、面向連接的、可靠的字節流服務。TCP協議是兩臺主機進程進行通信的基石,TCP使用連接(connectio

原创 redis3.2.8環境搭建及集羣的搭建

環境搭建 1.下載redis3.2.8壓縮包,使用SFTP上傳到linux服務器 2.解壓文件 tar-zxf redis-3.2.8.tar.gz 3.安裝c語言環境(安裝ubnutu之後,自帶c語言環境) 4.編譯源碼 ro

原创 併發隨筆(1)

併發的相關概念 進程: 操作系統必須全方位的管理計算機系統中運行的程序,因此操作系統爲正在運行的程序建立了一個管理實體——進程,進程是一個具有一定獨立功能的程序關於某個數據集合的一次運行活動,進程是操作系統進行資源分配和調度的

原创 TCP四次揮手

TCP四次揮手 TCP作爲可靠的連接協議,不僅體現在連接的建立上,也體現在其釋放連接上,但是世界上是不存在百分之百可靠的通信機制的,我們來看下TCP釋放連接,也就是四次揮手是如何儘可能保證TCP的可靠性的。 使用Wireshark

原创 spring隨筆(事務配置)

spring中的jdbc spring中的jdbc與傳統的jdbc有什麼區別?Spring的jdbc:節省代碼,不管連接(Connection),不管事務、不管異常、不管關閉(con.close() ps.close )由Jdbc

原创 數據庫查詢優化策略

數據庫查詢優化 邏輯層查詢優化策略 1.儘可能的早做選擇和投影(基本思路):可以使中間結果變小,節省幾個數量級的執行時間 2.把選擇和投影串接起來:一元運算序列可一起執行,只需對整個關係進行一趟掃描 3.把投影與其前或後的二元