原创 Spring JMS各組件詳解

Github在上一篇文章使用Spring/Spring Boot集成JMS的陷阱中講到了在使用Spring JMS組件時存在這一些性能陷阱,本文會着該文講解一下Spring JMS的各個組件、它們的作用以及正確使用的方法。JmsTempla

原创 Elasticsearch中將Doc根據A字段排序獲得第一個Doc的B字段值的方法

注:本文基於Elasticsearch 6.1.2編寫最近遇到這樣一個需求,要通過Elasticsearch將Doc根據A字段降序,然後獲得B字段的值,最終根據B字段的值再去做Pipeline Aggregation。先嚐試了Max Agg

原创 Nginx反向代理WebSocket響應403的解決辦法

在Nginx反向代理一個帶有WebSocket功能的Spring Web程序(源代碼地址)時,發現訪問WebSocket接口時總是出現403響應,Nginx的配置參考的是官方文檔:http { // ssl 相關配置 ...

原创 Spring、Spring Boot和TestNG測試指南 - @TestConfiguration

Github地址@TestConfiguration是Spring Boot Test提供的一種工具,用它我們可以在一般的@Configuration之外補充測試專門用的Bean或者自定義的配置。@TestConfiguration實際上是

原创 Spring、Spring Boot和TestNG測試指南 - 共享測試配置

Github地址在使用Spring Boot Testing工具中提到:在測試代碼之間儘量做到配置共用。 ... 能夠有效利用Spring TestContext Framework的緩存機制,ApplicationContext只會創建一

原创 Servlet 3.0 異步處理詳解

Github地址相關係列文章:Servlet 3.1 Async IO分析Spring MVC異步處理的幾種方式Servlet 3.0 開始提供了AsyncContext用來支持異步處理請求,那麼異步處理請求到底能夠帶來哪些好處?Web容器

原创 Spring、Spring Boot和TestNG測試指南 - 測試@Configuration

Github地址在Spring引入Java Config機制之後,我們會越來越多的使用@Configuration來註冊Bean,並且Spring Boot更廣泛地使用了這一機制,其提供的大量Auto Configuration大大簡化了配

原创 Spring MVC異步處理簡介

Spring MVC異步處理簡介Github地址相關係列文章:Servlet 3.0 異步處理詳解Servlet 3.1 Async IO分析本文講到的所有特性皆是基於Servlet 3.0 Async Processing的,不是基於Se

原创 Servlet 3.1 Async IO分析

Github地址相關係列文章:Servlet 3.0 異步處理詳解Spring MVC異步處理的幾種方式Servlet Async Processing提供了一種異步請求處理的手段(見我的另一篇文章Servlet 3.0 異步處理詳解),能

原创 Spring、Spring Boot和TestNG測試指南 - @ActiveProfiles

Github地址@ActiveProfiles可以用來在測試的時候啓用某些Profile的Bean。本章節的測試代碼使用了下面的這個配置:@Configuration public class Config { @Bean @Pr

原创 Mybatis Mapper.xml繼承機制

Mapper.xml繼承機制github地址Mybatis實際上隱藏了一個功能:Mapper.xml可以繼承,這個在官方文檔中並沒有提到過,不過在這個issue (commit)裏提到過。Statement覆蓋利用Mapper.xml的繼承

原创 Haproxy反向代理WebSocket的方法

WebSocket請求和一般的Http請求不一樣,它會長時間保持一個connection,Haproxy反向代理WebSocket請求需要用到timeout tunnel參數,否則這個鏈接可能就會提前關閉。例如:defaults tim

原创 Spring、Spring Boot和TestNG測試指南 - 測試Spring MVC

Github地址 Spring Testing Framework提供了Spring MVC Test Framework,能夠很方便的來測試Controller。同時Spring Boot也提供了Auto-configured Sprin

原创 Spring、Spring Boot和TestNG測試指南 - @TestPropertySource

Github地址@TestPropertySource可以用來覆蓋掉來自於系統環境變量、Java系統屬性、@PropertySource的屬性。同時@TestPropertySource(properties=...)優先級高於@TestP

原创 Spring、Spring Boot和TestNG測試指南 - @JsonTest

Github地址@JsonTest是Spring Boot提供的方便測試JSON序列化反序列化的測試工具,在Spring Boot的文檔中有一些介紹。需要注意的是@JsonTest需要Jackson的ObjectMapper,事實上如果你的