原创 單例模式,枚舉實現方式

private int age; private String name; public int getAge() { return age; } public Student() { super(); Sys

原创 itext5填充PDF表單

下載Adobe Acrobat DC 準備表單 官網 https://itextpdf.com/en/products/itext-5-legacy 相關包 <!-- pdf處理 --> <dependency>

原创 Java8 Lambdas及函數式接口的例子& Optional類的方法

函數式接口 使用案例 Lambda 的例子 對應的函數式接口 布爾表達式 (List list) -> list.isEmpty() Predicate<List<>> 創建對象 () -> new Apple(

原创 Jenkins持續集成 自動發佈遠程tomcat

安裝Java環境。 略 下載Jenkins Jenkins官網下載地址 自定義端口啓動(默認8080) : nohup java -jar jenkins.war --ajp13Port=-1 --httpPort=端口

原创 tomcat異常退出 org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler

轉載自http://ifeve.com/why-kill-2-cannot-stop-tomcat/ 節前某個部門的測試環境反饋tomcat會意外退出,我們到實際環境排查後發現不是jvm crash,日誌裏有進程銷燬的記錄,從pa

原创 解決微信小程序富文本JAVA後端渲染方案(參考html2wxml4j)

基於Jsoup+FastJson。參考html2wxml4j。(僅Java部分, 前端自行百度。。。) <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</

原创 多線程基礎

格式混亂。。。。可至我的有道雲查看:http://note.youdao.com/noteshare?id=277d8d512f6f80f111bc7a058aa3cb27&sub=743EACECE382418AAEEE56CA08

原创 spring cloud feign報錯 404

注意是否加了server.context-path配置。 如果添加了server.context-path配置, 可以在上圖路徑加上server.context-path。

原创 springcloud feign請求時報錯 Request header is too large

java.lang.IllegalArgumentException: Request header is too large at org.apache.coyote.http11.InternalNioInputBuffer.f

原创 java8時間日期API(LocalDate、 LocalTime、 Instant、 Duration 以及 Period)

創建一個LocalDate對象並讀取其值 LocalDate date = LocalDate.of(2018, 10, 31);//2018-10-31 int year = date.getYear();//2018 Mont

原创 CompletableFuture: 組合式異步編程

Future 接口 Java 8之前使用Future的例子: @Test public void test1() { ExecutorService executor = Executors.newCachedThreadPo

原创 Java8 Lambda、方法引用和stream流示例

public class Apple { private String color; private Double weight; public String getColor() { return color; }

原创 Java8 用Optional取代null

應用 Optional 的幾種模式 創建 Optional 對象 聲明一個空的Optional Optional<Car> optCar = Optional.empty();``Optional<Car> optCar = O

原创 Redis實現分佈式鎖RedLock

什麼是 RedLock Redis 官方站這篇文章提出了一種權威的基於 Redis 實現分佈式鎖的方式名叫 Redlock,此種方式比原先的單節點的方法更安全。它可以保證以下特性: 安全特性:互斥訪問,即永遠只有一個 client

原创 LinkedList 底層分析

如圖所示 LinkedList 底層是基於雙向鏈表實現的,也是實現了 List 接口,所以也擁有 List 的一些特點(JDK1.7/8 之後取消了循環,修改爲雙向鏈表)。 新增方法 public boolean add(E e)