原创 IT小公司管理的幾點思考

我最近好幾年一直在小公司待着,基本做的都是技術架構+管理的工作。最近我也進行了一下總結,準備把我在小公司所遇到的一些問題和困惑都寫出來,和大家討論討論。 因爲小公司規模、知名度和錢等原因,會產生很多很多的管理困境。 1、IT小公司

原创 源碼分析與實戰——深入理解Java的4種線程池

大家都知道,Java一共提供了4種線程池,通過Executors類的4個靜態方法可以獲得實例: Executors.newSingleThreadExecutor() Executors.newFixedThreadPool()

原创 源碼分析與實戰——深入理解ScheduledThreadPool線程池延時執行機制(一)

1、前言 在上篇博客《源碼分析與實戰——深入理解Java的4種線程池》中,我們詳細分析了一下Java四種線程池的基本源碼,編寫代碼進行了嘗試。其中single單線程池、fiexed定長線程池、cached緩存線程池都比較簡單,sc

原创 IT小公司避坑及生存指南

毫無疑問,所有的人都願意去大公司工作! 大公司的優點自不用多說,規範、薪資、福利、穩定性等等都完爆小公司。但是大公司要不了那麼多人!全國中小企業爲城鎮提供了75%的就業崗位,這意味着大部分人都得進入中小企業討生活! 我工作這17年

原创 源碼分析與實戰——深入理解ScheduledThreadPool線程池延時執行機制(二)

1、前言 在上篇博文中《源碼分析與實戰——深入理解ScheduledThreadPool線程池延時執行機制(一)》中,其實我們留下幾個問題:ScheduledThreadPool是如何保證任務delay到時準時執行的?任務執行順序

原创 源碼分析與實戰——徹底理解Thread和Runnable使用

     衆所周知,在Java高級開發裏面,多線程會經常被使用。通常有2種方式去啓動一個新線程: 定義一個Thread的子類,在子類中重寫run方法。 定義一個類實現Runnable接口,重寫run方法;然後通過新建Thread線程去執行

原创 @Value取值爲NULL的解決方案

在spring mvc架構中,如果希望在程序中直接使用properties中定義的配置值,通常使用一下方式來獲取: @Value("${tag}") private String tagValue; 但是取值時,有時這個t