原创 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