原创 #{}和${}的不同

#{}和${}的不同 這兩種寫法的效果是一摸一樣的,但是,它們也有不相同的地方。 處理方式不同 ${}相當於字符串的拼接。 #{}相當於在sql語句中使用?佔位符,然後給這個佔位符設置值。 丨從安全角度將,${}有被SQL注入的風

原创 Mybatis目錄

Mybatis初體驗 XML映射文件介紹(實現簡單的CRUD) Mybatis對參數的處理 #{}和${}的不同 語句類型 & 根據數據庫加載語句 在主鍵自增的情況下獲取主鍵 關聯屬性的封裝(連接查詢 & 分步查詢),延遲加載

原创 多線程+非阻塞通信導致多次處理讀事件

多線程+非阻塞通信導致多次處理讀事件 有問題的代碼:Echo服務端 簡單的解釋一下,事件處理器handler有一個handle(SelectionKey)方法,根據方法的不同,執行不同的操作。對於讀事件,創建一個線程進行讀事件處理

原创 切入點表達式的細節

文章目錄切入點表達式的細節標準寫法訪問修飾符可以省略使用通配符表示任意的返回值包名可以使用通配符表示任意包及其子包的通配符類名使用通配符方法名可以使用通配符參數列表普通類型:直接寫類型引用類型:全限定類名使用通配符表示表示任意參數

原创 AOP的引入及AOP相關術語

文章目錄AOP引入:動態代理處理公共代碼重複代碼問題AOP相關概念AOP(Aspect Orientend Programming)連接點(JoinPoint)切入點(PointCut)目標對象(Target)通知(Advice)

原创 舉例:Spring整合連接池 + DBUtils,實現事務處理

文章目錄舉例:Spring整合連接池 + DBUtils,實現事務處理回顧事務處理的流程問題:多次數據庫操作過程中,使用同一個Connection使用ThreadLocal保證事務沒完成時每次獲取的連接時同一個對象問題:Dao層執

原创 多個配置元數據的合併

文章目錄多個配置元數據的合併1.基於XML``標籤多個XML傳入構造器2.基於註解3.基於Java的合併通過@import註解@ComponentScan包掃描註解多個配置類傳入構造器4.基於Java的配置和基於XML的配置的合併

原创 基於Java配置的常量注入

文章目錄基於Java配置的常量注入基於Java配置產生的新問題解決上述問題:通過@PropertySource加載配置常量setter注入構造器注入小結 基於Java配置的常量注入 基於Java配置產生的新問題 在使用Spring

原创 基於Java的配置元數據

文章目錄基於Java的配置元數據用配置類代替XML@BeanAnnotationConfigApplicationContext(Class<?>...)@Configuration兼容基於註解的配置元數據 @ComponentS

原创 其他註解

其他註解 @Scope、@PreDestory、@PostConstruct 1. 用於指定作用範圍 @Scope 屬性:value 常用取值: singleton:標識一個單例bean(默認值) prototype:標識一個原

原创 機制:地址轉換

機制:地址轉換 文章目錄機制:地址轉換如何實現虛擬內存系統(虛擬化內存)基於軟件的重定位(靜態重定位)基於硬件的重定位(動態重定位)(動態重定位)硬件支持:總結(動態重定位)操作系統的支持內部碎片受限制的直接執行協議(動態重定位)

原创 分段

文章目錄分段分段:泛化的基址/界限引用哪個段隱式方式顯式方式討論一下“生長方向”地址轉換總結操作系統的支持總結 分段 如圖,地址空間(左)的堆和棧之間,有一塊每一使用的內部碎片,但是,如果要將整個地址空間加載到內存,內部碎片也會

原创 進程調度新要求:響應時間

響應時間 T響應時間 = T首次運行 - T到達時間 引入響應時間的原因:如果使用STCF的調度方式,可以使週轉時間最短,但是,如果短任務很多,則沒有長任務執行的機會,對長任務來說很“不公平” 輪轉 輪轉的思想:設置一個時間片,一個進程

原创 進程調度:根據週轉時間優化

先進先出(FIFO) 先進先出的調度方式,看名字就知道,“大家”先來後到排好隊,一個一個調度。 這樣的調度方式實現起來很簡單,但僅僅這樣就夠了嗎?顯然不是,對於進程的調度,當然有性能的要求。 因此,要先引入一個評價性能的指標,來判斷FI