原创 Spring中的事務傳播機制和嵌套事務

一、序言 Spring中聲明式事務確實給我們帶來了很大的便利,在Service層方法上帶上@Transactional註解即可實現事務,首先看看@Transactional的默認配置: 1、默認使用的事務管理器名字爲"transactio

原创 (七)Logback中的MDC(Mapped Diagnostic Context)

一、爲什麼會有MDC(MappedDiagnosticContext)? 審計和調試分佈式應用是logback的設計目標之一,在多線程環境中,不同的線程會處理不同的客戶端,爲了區分不同客戶端日誌輸出,一種輕量級但不可取的做法是爲每個實例化

原创 根據指定Excel模板填充導出數據

根據Excel模板填充優先推薦阿里的EasyExcel,github地址:https://github.com/alibaba/easyexcel。 由於目前老系統poi版本過低,高版本EasyExcel不兼容,因此自己實現了根據模板填充

原创 基於OkHttp網絡通信工具類(發送get、post請求、文件上傳和下載)

一、爲什麼要用OkHttp? okhttp是專注於提升網絡連接效率的http客戶端。 優點: 1、它能實現同一ip和端口的請求重用一個socket,這種方式能大大降低網絡連接的時間,和每次請求都建立socket,再斷開socket的方式相

原创 如何在Maven中構建SWT/JFace應用並打包成可執行的jar包

    前面在Maven中構建SWT應用的時候發現SWT相關jar包在Maven中央倉庫上找不到,後面在stackoverflow上有人提供了一個倉庫地址:https://github.com/maven-eclipse/maven-ec

原创 (五)Logback中的Layout

一、什麼是Layout? Layout是logback中負責把日誌事件轉換成成字符串的組件,接口如下: public interface Layout<E> extends ContextAware, LifeCycle { St

原创 (六)Logback中的Filter

一、Logback中Filter的種類 在logback-classic中,提供了兩種類型的filter:regular過濾器和turbo過濾器。 1、Regular過濾器 規律型過濾器繼承自Filter抽象類,該類主要由帶有ILoggi

原创 Spring項目中修改javamelody映射url以及其它參數失效的問題

首先,servlet3.0支持模塊化,在jar包中如果有web-fragmenet.xml,則servlet容器會先加載web.xml裏的listener、filter和servlet,再加載web-fragment.xml裏的組件。關於

原创 IDEA常用設置

一、全局設置 1、新工程設置(Other Settings -> Settings for New Projects) 開啓泛型檢查 自定義java類文件頭部註釋 設置文件編碼 構建工具Maven設置

原创 CPU相關概念及如何在Linux中查看CPU信息

一、CPU相關概念 1、物理CPU 物理cpu就是計算機上實際安裝的cpu,物理cpu數就是主板上實際插入的CPU數量。 在Linux上查看/proc/cpuinfo,其中的physical id就是每個物理cpu的id,有幾個

原创 Disconf源碼解析(第一章)

一、Disconf兩個核心bean配置 <bean id="disconfMgrBean" class="com.baidu.disconf.client.DisconfMgrBean" destroy-method="de

原创 進程、線程、併發、並行、同步、異步、阻塞、非阻塞

一、進程和線程 幾乎所有的操作系統都支持同時運行多個任務,一個任務通常就是一個程序,每個運行中的程序就是一個進程。當一個程序運行時,內部可能包含了多個順序執行流,每個順序執行流就是一個線程。 進程是系統進行資源分配和調度的一個獨立單位,進

原创 Servlet中url-pattern的匹配規則

首先需要明確幾容易混淆的規則: (1)servlet容器中的匹配規則既不是簡單的通配,也不是正則表達式,而是特定的規則。所以不要用通配符或者正則表達式的匹配規則來看待servlet的url-pattern。 (2)Servlet 2.5開

原创 (三)Logback中的Appender

一、什麼是Appender? Logback會把書寫日誌事件的任務委託給叫做appender的組件,appenders必須實現ch.qos.logback.core.Appender接口,該接口方法如下: package ch.qos.

原创 (四)Logback中的Encoder

一、什麼是Encoder? Encoder負責轉換日誌事件爲字節數組並將字節數組輸出到輸出流中,編碼器是在logback 0.9.19版本中引入的,以前老版本中大多數appenders依賴layout轉換日誌事件,然後使用java.io.