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