原创 spring 容器的功能擴展
ApplicationContext 和 BeanFactory 兩者都是用於加載bean的,但是相比之下,ApplicationContext 提供了更多的擴展功能,簡單一點說:ApplicationContext 包含bea
原创 spring 容器的功能擴展3-2 添加後處理器
在這個步驟中 使用了ApplicationContextAwareProcessor ,這是一個bean後處理器,在實例化之前 給各種aware 設置參數,當我們實現一些aware的時候,總是能拿到一些參數,到這裏填充功能結束 publ
原创 spring 容器的功能擴展4.postProcessBeanFactory
這個功能在abstractApplicationContext中並沒有實現,故意留給子類去實現: BeanFactoryPostProcessor和BeanPostProcessor很相似,只是層級不同,BeanFactoryPostPr
原创 策略模式 + 責任鏈模式 + 組合轉發練習
/** * @author yaoqiang * @create 2018-12-12 23:40 * @desc 員工信息 **/ @Data public class Employee { private int i
原创 關於spring security 認證的簡單知識整理
1.認證 幾個重要的類: UsernamePasswordAuthenticationFilter 從名字上看,就知道,這是一個驗證username 和 password的過濾器,通過 filter獲取request,從req
原创 nginx 的配置總結
參考博客: https://www.cnblogs.com/coder-yoyo/p/6346595.html location匹配順序 "="前綴指令匹配,如果匹配成功,則停止其他匹配 普通字符串指令匹配,順序是從長到短,匹配成功的
原创 lombok的使用
lombok是一個簡化代碼的工具包: 我使用的是idea: springboot引入,如果不是使用的springboot,那就自行加上版本號 <dependency> <groupId>org.p
原创 intellij 到 github
https://www.cnblogs.com/520playboy/p/6697127.html
原创 Thinking in java 第21章 併發 notify()與nofityAll()
因爲在技術上而言,可能會有多個任務在單個car對象上處於wait()狀態,因此調用notifyAll()比只調用nofity()更加安全。但是,上面的程序的結構只會有一個任務實際處於wait()狀態,因此你可以使用nofity*
原创 Thinking in java 第21章 併發 wait() 與 notifyAll()
wait 使你可以等待某個條件發生變化,而改變這個條件超出了當前方法的控制能力,通常,這種條件將由另一個任務來改變。你肯定不想在你的任務測試這個條件的同時,不斷的進行空循環,這被稱爲忙等待,通常是一種不良的cpu週期使用方式。因此wait
原创 Thinking in java 21.2.8 後臺線程 Executors無法執行守護線程
什麼是後臺線程(守護線程) 爲其他線程提供服務的線程,當所有其他線程結束的時候,後臺線程也就結束了,只要有一個線程沒有結束,那麼後臺線程就一直執行下去。 但是我們一般做多線程都是使用線程池,比如: publi
原创 springMVC 枚舉參數轉換
使用的是ConverterFactory這個接口: 自定義實現類: 感謝 https://github.com/albertchendao/demos/tree/master/java/spring/HelloWorld-MVC-Enum
原创 java 多線程 在阻塞時終結
一個線程可以處於以下四種狀態: 新建(new):當線程被創建時,它只會短暫地處於這種狀態。此時它已經分配了必需的系統資源,並執行了初始化。此時刻線程已經有資格獲得CPU時間了,之後調度器將把這個線程轉變爲可運行狀態或阻塞狀態。
原创 Thinking in java 第21章 併發 12.2.11 加入一個線程
一個線程可以在其他線程之上調用join()方法,其效果是等待一段時間直到第二個線程結束才繼續執行。如果某個線程在另一個線程T上調用T.join(),此線程將被掛起,知道目標線程結束才恢復(t.isAlive() == fa
原创 Thinking in java 第21章 併發 21.2.14 捕獲異常
由於線程的特殊,使得你不能捕獲從線程種逃逸的異常,在這裏可以使用Executor來解決這個問題: 下面的代碼沒有辦法捕獲異常: class ExceptionThread extends Thread { @Overr