原创 web項目下讀取classpath下的文件心得--使用springboot遇到的大坑

在讀取springBoot+gradle構建的項目時,如果使用傳統的FileInputStream讀取文件流或者ResourceUtils工具類的方式,都會失敗,下面解釋原因:一、讀取文件的三種方式:1. ResourceUtils工具類

原创 第一個Go項目

一、新建項目1. 新建一個項目在配置的GOPATH下2. 新建以下三個文件夾src pkg, bin,在src下新建main文件夾,其中寫代碼3. 爲項目建立一個獨有的GOPATH,重要,否則第5步會因找不到PATH下的Package而出

原创 Golang之net/http包的httpClient與Transport源碼詳解

一、net/http的httpclient發起http請求 方法 第二步:Do/Get/Post方法的實現(以Do爲例) 第三步:精髓:調用transport的RoundTrip方法 struct: RoundTrip方法:

原创 golang善用go func和defer

一、error與panic: error:可預見的錯誤 panic:不可預見的錯誤,panic一般通過defer中的recover()捕獲 對於有風險的代碼,若發生panic則會導致程序異常退出,例如數組越界。 1. pani

原创 java應用之——讀取word英文文檔,統計單詞頻次並輸出到excel

該文是java讀取文件寫入文件的應用,相關知識見上篇博文https://blog.csdn.net/nnnora/article/details/80734917一個例子:讀取word英文文檔,統計單詞頻次並輸出到excel pub

原创 java讀取txt,寫入txt,讀取word,寫入excel總結

1. 讀取txt文件:使用ClassPathResource的原因在https://blog.csdn.net/nnnora/article/details/80734326中闡述過,因爲是springboot內置web容器所以不能使用F

原创 leetcode-2. Add Two Numbers

題目類型:遞歸、鏈表 耗時: 一刷:1h 二刷:22min 題意: 給出兩個鏈表,將鏈表中的數逆向得到的int相加,再逆序輸出,用鏈表存儲每一位。 - 若兩個鏈表不一樣長,不足位爲0 例子: 錯誤嘗試:Stack 分別遍歷

原创 Golang之消息機制channel

1. 背景:1. 對於以下這段代碼:按照想法應該輸出0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9但是,輸出結果是:0 1 2 3 4 5 6 7 8 92. 原因:在goroutine還未來得及跑loop

原创 leetcode-3. Longest Substring Without Repeating Characters

無重複元素的最長子串(不是子序列,子序列可以不連續,子串必須是一段連續) 題意: 給出一個字符串,輸出他的無重複元素的最長子串的長度: - 無重複元素 - 最長 - 子串的字符在父串中連續,不可以間隔 方法一 如果s長度小

原创 goroutine與協程

一、線程與協程的區別1. 調度上的區別1. 進程線程都是由操作系統進行調度, 有CPU時間片的概念,進行搶佔式調度2. 協程是用戶態的輕量級線程,對內核透明,所以協程的調度與切換完全由用戶控制3. 正因爲協程不由操作系統調度,纔有:線程是

原创 fasthttp client解析--Golang更快的http組件

1. test中調用Get方法2. 調用clientGetURL方法3. 首先調用AcquireRequest()方法得到一個複用的requestAcquireRequest():1. 從requestPool中選擇一個request,從

原创 Go入門之——Go開發環境配置

一.配置Go開發環境1. 到這個網站https://studygolang.com/dl下載對應的安裝包,msi包表示安裝後不需要配置環境變量,會自動配置2. 安裝位置爲默認即可。3. 查看環境變量已經自動更改。4. 檢查是否成功:命令行

原创 Python初探之實現機器人聊天+微信自動回覆

最近看到公司代碼平臺上有小夥伴用Python實現了聊天機器人功能,一直很想學Python卻沒有開始,自己實現一下,集成聊天機器人+接入微信接口實現自動回覆。一、圖靈機器人1. 在圖靈機器人官網註冊一個賬號http://www.turing

原创 python入門之Anaconda安裝

一、 Anaconda介紹Anaconda是一個包管理軟件,將Python版本和許多常用的package打包發佈的一個開源版本,使用它可以減少很多後續安裝python各種包的麻煩,且自帶Jupyter編輯器,可以實時編輯代碼。安裝Anac

原创 Java8之新特性Optional的使用

最近在寫項目的時候頻繁用到Java8的一個新特性,Optional,總結一下。 1. 服務中要儘量避免使用null,Optional是爲了解決使用null引起的NullPointerException異常。 2. 在引入Optional之