原创 ArrayList和LinkedList的對比

List數據結構在實際開發中是非常常見的,其中Arraylist和LinkedList又是這種數據結構中最常見的,本篇文章將會從不同角度來記錄講解這兩種list的實現方式及優缺點,以及在實際開發中該如何去選擇 ArrayList的

原创 tkinter複選框選擇後無效

tkinter可以定義複選框進行操作,如: def __init__(self): self.root = Tk() self.status = IntVar() Checkbutton(self.root

原创 如何將excel中的日期和數字轉換成文本

當我們使用程序讀取excel文件的時候,如果讀取日期或者數字數據的時候,總是會遇到將日期轉換成一個5位數字,將數字添加.0等情況,遇到這類情況我們就需要在程序中做特殊處理了,下面我們使用通過操作excel將其數據轉換成text,無

原创 從零學nginx-root,alias,index

1. root root模塊就是用來指定訪問資源的document_root,nginx會將root的值和location的值進行拼接,然後再拼接上url剩餘的部分及index指定的值,舉例: location /a/{

原创 spring源碼-2.2.默認標籤的解析

上一節中,我們詳細分析了spring在解析xml,創建beanFactory的前期準備工作,這一節我們將會詳細分析一下spring是如何解析系統默認標籤的。 首先進入解析默認標籤方法的入口,parseDefaultElement(

原创 jxl操作excel很慢的問題

jxl是操作excel常用的工具,但是有的時候我們會發現當使用jxl讀寫excel的時候會很慢,就像卡住了一樣。通過分析,我們發現是workbook對象進行close的時候,會有很長時間的停頓,進入close方法源碼: publi

原创 從零學nginx-配置反向代理

nginx反向代理工作方式 nginx作爲方向代理服務器,其工作方式有兩個點需要注意: 當轉發請求的時候,nginx會接收完所有的請求數據,再去轉發請求。 在響應的時候,nginx是一邊接收響應數據,一邊將響應數據返回給客戶端

原创 從零學nginx-windows下reload配置無效及如何重啓

在windows環境下安裝的nginx,如果修改了配置,想要通過nginx -s reload去刷新配置,會發現很多時候都是無效的,這個時候我們就需要重啓,但是nginx是master,work模式,所以會存在多個進程的情況,當我

原创 從零學nginx-安裝nginx

1. 安裝前的準備 1.1. 環境 linux2.6以上的版本,因爲只有2.6以上的版本才支持epoll,可通過uname -a查看版本 1.2. GCC編譯器 nginx在1.2.x一下的版本是不支持二進制文件直接安裝的,所以可

原创 從零學spring boot-集成redis時未使用連接池的問題

在之前spring boot集成redis的文章中曾今指出如果沒有配置redis連接池的信息(即使存在默認的連接信息),那麼在使用redisTemplate的時候,是不會使用連接池的。這一篇文章我們將從源碼中分析這其中的原因。 首

原创 spring boot2.1後的版本不打印Mapped日誌問題

spring boot項目啓動時候會打印對外提供的rest接口的Mapped的信息,但是有的時候會出現不打印的情況,那是因爲spring boot的版本是2.1以上了,源碼做了一定的修改。 解決方案 解決方案很簡單,只需要在app

原创 從零學spring boot-集成redis

添加依賴 <!-- spring boot2.0後,默認使用的redisConnectionFactory爲LettuceConnectionFactory,這裏想要繼續用jedis,就做個exclusion --> <depen

原创 從零學nginx-location配置及匹配規則

1. 配置語法 1.1. =: 嚴格匹配,只有完全一樣的才能匹配上,這裏有一些要注意: 1. 嚴格匹配如果需要匹配一個文件的時候,需要將路徑具體到這個文件,不能使用index進行拼接 2. 如果匹配的是一個文件夾,在最後最好要加一

原创 rabbitmq接收控制檯發送的消息爲一個字節字符串的問題

rabbitmq的控制檯可以直接向指定隊列發送消息,很方便我們在開發消費者的過程中進行調試,當我們在rabbitmq指定的queue中發送一條消息時: 而我們的接收端收到的消息卻不是“我是中國人這段字符串”,而是它的字節字符串:

原创 mybatis的批量insert和update

批量insert <insert id="batchInsert" parameterType="java.util.List"> insert into 表名 (字段1,字段2,字段3……) values <foreach co