原创 HandlerAdapter之RequestMappingHandlerAdapter處理請求

一、類圖 1.1 HandlerAdapter類圖   1.2 RequestMappingHandlerAdapter類圖     二、處理請求流程 (1) 檢查給定請求的請求方法是否支持,是否必須有會話 (2) 創建WebData

原创 Mybatis集成Spring原理分析

概述 MapperFactoryBean擴展SqlSessionDaoSupport SqlSessionDaoSupport可以設置SqlSessionFactory或SqlSessionTemplate,對於設置SqlSessionF

原创 HandlerMapping之RequestMappingHandlerMapping獲取Handler

一、HandlerMapping類圖     二、根據請求獲取 HandlerExecutionChain 2.1 獲取HandlerMethod流程 (1) 根據請求URL獲取直接匹配的List<RequestMappingInfo>

原创 HandlerMapping之RequestMappingHandlerMapping初始化

一、HandlerMapping類圖 默認情況下,SpringMVC 將加載當前系統中所有實現了HandlerMapping 接口的bean。如果只期望SpringMVC加載指定的handlermapping 時,可以修改web.xml中

原创 Mybatis系列一:構建SqlSessionFactory

一、SqlSessionFactoryBuilder SqlSessionFactoryBuilder的build方法接受Reader/InputStream/Configuration作爲配置源,創建SqlSessionFactory實

原创 Mybatis系列十:創建SqlSession應用Plugin

一、DefaultSqlSessionFactory SqlSessionFactory默認實現是DefaultSqlSessionFactory,提供了許多openSession重載方法,用於創建SqlSession。   1.1 根據

原创 Spring5.X 事務管理器 PlatformTransactionManager

一、事務管理器類圖   二、事務管理器概述 PlatformTransactionManager接口定義了獲取事務(getTransaction)、提交事務(commit)、回滾事務(rollback)三個方法。 getTransact

原创 Mybatis系列七:XMLStatementBuilder創建MappedStatement

Mybatis系列七:XMLStatementBuilder創建MappedStatement 概述 在《Mybatis系列四:XMLMapperBuilder解析XL配置文件》一文【1.3.6 解析select|insert|u

原创 Mybatis系列四:XMLMapperBuilder解析XL配置文件

概述 在《Mybatis系列一:構建SqlSessionFactory》一文中瞭解了Mybatis配置文件的解析,其中對mappers元素解析使用到了XMLMapperBuilder這個類,現在分析下這個類是如何解析Mapper配置文件的

原创 Mybatis系列六:MapperAnnotationBuilder解析Mapper Class

Mybatis系列六:MapperAnnotationBuilder解析Mapper Class 概述 在**《Mybatis系列五:MapperRegistry註冊並解析Mapper Class》**一文【2.3 添加Mappe

原创 Mybatis系列十一:SQL及執行結果日誌輸出

Mybatis系列十五:SQL及執行結果日誌輸出 概述 每個MappedStatement創建一個日誌對象,可以控制每個運行時SQL語句的打印以及執行結果的打印。 日誌Debug級別打印SQL語句:PreparedStatemen

原创 SSH終端失效後Tomcat被關閉

背景:Tomcat升級、服務遷移阿里雲 問題:Tomcat服務運行一段時間(一小時或5、6小時)後自動關閉 操作環境:電腦設置20分鐘自動鎖屏,iTerm2訪問遠程服務器 操作:要操作的機器比較多,沒有批量操作工具,將多個命令合併在一起減

原创 Java鎖之AbstractQueuedSynchronizer

AbstractQueuedSynchronizer 一、AbstractQueuedSynchronizer 1.1 acquireQueued 同步隊列中節點獲取鎖 當前節點的前繼節點是頭節點嘗試獲取鎖,獲取成功直接返回。 當

原创 Redis5.x集羣搭建記錄

1、準備節點 下載redis-5.0.4.tar.gz,直接解壓複製出5份,每個節點分配一個端口,redis.cfg配置如下,每個節點更改端口號即可 port 7000 daemonize yes loglevel debug logfi

原创 Spring5.x Transaction 自定義事務標籤

1、自定義事務標籤XML配置 <tx: annotation-driven transaction-manager="transactionManager" mode="aspectj "/>   2、自定義事務標籤命名空間處理器 TxN