原创 spring-6-源碼解析AOP
原理圖 https://www.processon.com/apps/5d1c16dde4b076f4fd3f5c40 package com.beanPostProcessor; import org.sprin
原创 spring-5-AOP模擬
1、FactoryBean與BeanFactory之間的區別 BeanFactory:是spring中底層工廠類,getBean()方法最好的解釋 FactoryBean:如果自己的類中實現了FactoryBean會實現三個方法,其中會有一
原创 spring-5-spring源碼(模擬自動注入)
1、定義接口 package com.service; public interface Service { public void queryDao(); } package com.dao; publi
原创 spring-4設計模式-源碼解析
手動模擬的動態代理 不需要手動創建類文件(因爲一旦手動創建類文件,就會產生類爆炸),通過接口反射生成一個類文件,然後調用第三方的編譯技術,動態編譯這個產生的類文件成class文件,繼而利用UrlclassLoader(因爲這個動態產生的
原创 spring-4設計模式-代理動態,代理源碼分析,實現自己的動態代理
什麼事代理? 就是對一個對象功能的增強,例如網上售票,代理的就是各個售票點的代理 java實現的代理兩種辦法 名詞:代理對象、 目標對象 。代理和目標不是絕對的,例如:故宮售票、網上售票、黃牛售票。故宮售票對於網上售票來說,前
原创 spring-3-AOP
自定義註解類 @Retention(RetentionPolicy.RUNTIME),編譯是保留運行時註解 1、定義註解類 package anno; import java.lang.annotation.ElementType
原创 Spring-1-IOC
IOC與DI的區別? IOC:控制反轉(Inversion of Control是面向對象的一種設計原則,可以用來降低計算機之間的耦合度,其中最常見的是依賴注入).是實現的目標 DI:是實現IOC的一種手段Dependency
原创 Spring-2-官網學習
spring生命週期回調 結合生命週期機制(官網提供) 1、實現InitializingBean接口重寫void afterPropertiesSet() throws Exception;方法 使用場景:再bean構造方法
原创 git使用
https://git-scm.com/book/zh/v2 三種狀態 好,請注意。 如果你希望後面的學習更順利,記住下面這些關於 Git 的概念。 Git 有三種狀態,你的文件可能處於其中之一:已提交(committed)、已修改
原创 mybatis-spring_緩存
學習之前需要先了解一下什麼是mybatis一級緩存? LZ推薦:https://blog.csdn.net/niunai112/article/details/80601793#%E4%B8%80%E7%BA%A7%E7%BC%93%E5%
原创 mybatis-5 手寫代理
@Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface Select { public String valu
原创 併發學習-1
一、基本概念 程序:代碼,爲了完成某一任務的,代碼序列 靜態 進程:程序完成某一任務的一次運行 動態 線程:一個進程由多個線程組成 二、JVM與線程 JVM什麼時候啓動? 答:類被調用 JVM線程包含其他線程(main) 三、JV
原创 mybatis-中文文檔
1 Mybatis的介紹 Mybatis就是一個封裝jdbc的持久層框架,它和hibernate都屬於ORM框架,但是具體的說,hibernate是一個完全的orm框架,而mbatis是一個不完全的orm框架. Mybatis讓
原创 併發7-線程池
用優雅的方式理解和使用線程池 線程池的目的(1)減少系統維護線程的開銷(2)解耦,運行和創建分開(3)線程可以複用 線程池的使用(1)接口Executor 提供方法execute(Runnable)執行線程命令(2)接口Executor