原创 github項目學習指南

  本文爲作者在學習github項目時的一些感想:怎樣能夠快速上手一個開源項目,理解其知識點,並仿寫出類似系統——一般指maven構建的java項目。當然現階段只是停留在“理解”。希望在此處坐下相關心得記錄,以防遺忘。 閱讀項目

原创 spring-boot配置(一):@Configuration,@ConfigurationProperties和application.yml

  以發送郵件和數據庫配置爲例,介紹三者之間的搭配使用。 郵件配置   當在Service使用@Resource+@Qualifier調用諸如郵件接受者變量時 @Resource @Qualifier pr

原创 線程執行器的創建:Executor及其子類

一.Executors創建線程執行器的基本方式及其弊端 1.四種創建執行器方法的簡介   java創建線程執行器(Executor接口實現類)時常用以下代碼 //合理的首選:CachedThreadPool會在程序

原创 靜態方法和成員變量

  阿里java編程規約中將“實例調用對應類的靜態成員/方法”視爲錯誤,因爲“會增加編譯器解析成本,直接通脫類名調用即可”。stack flow上相關討論也說這是一個尾大不掉未解決的問題。關於阿里給出的理由,猜想是“通過實例調用靜

原创 SPARQL(一)

本文是對使用 SPARQL 查詢 RDF 數據的彙總演示,詳情請點擊原文及原文引用文章。 subject:主語;Object:賓語;property:屬性(關係); 前置準備   一.使用工具爲Apache Jena的命令行工具,

原创 301提示

錯誤   嘗試實現TF-IDF算法,第一步分詞就卡了,向哈工大語言云接口發送請求,代碼如下 /** * 調用哈工大語言云接口 * @param apiKey 認證標識 * @param tex

原创 餘弦的兩種表示方法:邊長和向量

前提:什麼是餘弦   一句話:鄰邊比斜邊。如圖:cosA=b/c   餘弦分佈圖如下:    一.當知道三邊長時 夾角餘弦:cosθ=(a²+b²-c²)/2ab 二.當僅知道兩邊的向量表示a(x1,y1)、b(x

原创 Executor框架(二)

  本部分內容來自於《java併發編程實戰》6.2小節。覺得講的很好但是很多地方還是不太理解,覺得還是需要紮實的功底和比較多的相關經驗才能夠透徹的理解。 前言   任務是一組邏輯工作單元,線程則是使任務異步執行的機制。java類庫

原创 知識圖譜簡介:事物,而非字符

  內容有點老,來自於2012年5月谷歌的官方博客。此篇文章是對谷歌博文的簡單彙總。博客本身比較容易理解,建議直接跳過此篇文章直接食用谷歌的文章。   知識圖譜之前,搜索使用的是字符串(String)匹配,但是諸如李寧,可能有多

原创 控制反轉IoC(Inversion of Control)

基本介紹   IoC同DI(依賴注入),是同一個概念不同角度的描述。IoC是不在對象中直接控制自己設計的對象,而是交給容器(比如Service對象?)。瞭解IoC概念,同名,我們必須瞭解:1.誰控制了誰的什麼;2.爲何反轉、在哪些

原创 tf-idf算法的基本實現,java

聲明   以下代碼只是對tf-idf算法思想的基本實現,因此許多地方需待完善,總結如下:   1.實現邏輯問題:特殊位置、比如段首或者名詞(相對於動詞),應該有更大的權重;   2.分詞前應該對文本進行基本處理:去掉標點,合適

原创 Spring中bean的三種裝配機制之——自動裝配

基本介紹   關於各種配置,從來沒搞懂過。但是覺得框架發展這麼快,而且結構這麼宏大,其實現微觀上來講應該從來沒有一種標準方式、更沒有說是固定的幾種。比如Spring專有的@Component、@Autowired註解,大多數情況下

原创 Spring中bean的三種裝配機制之一—java configure

基本介紹   上一篇博文我們已經講了怎樣使用@ComponentScan和@Autowired實現自動裝配,這裏將講解使用java config實現bean裝配的方式。之所以還需要使用java config裝配,是因爲當我們使用第

原创 mysql運行拼接的字符串和導出數據

“prepare+execute”   學習存儲過程中發現sql語句有些部分不能夠使用變量,因此採用拼接字符串的形式,然後執行字符串代表的SQL。基本形式如下:    set @sql=concat('select *

原创 java併發-Thread類基本方法介紹

待更新 java.lang.SecurityManager; Thread中基本方法 1.void suspend()方法   這是一個過時的方法,與void resume()搭配使用來暫停和喚醒一個線程。這兩個方法有可能造成