Java Web Weekly, Issue 108 – Java网络周刊》第108期

最后修改: 2016年 1月 22日


At the very beginning of last year, I decided to track my reading habits and share the best stuff here, on Baeldung. Haven’t missed a review since.


Here we go…


1. Spring and Java


>> Programming with modularity and Project Jigsaw. A Tutorial Using the Latest Early Access Build []

A solid and quite exhaustive writeup about the new modularity work coming to Java 9.

一篇扎实的、相当详尽的文章关于Java 9的新模块化工作

>> Spring Batch Tutorial: Introduction []

A quick, solid intro to what Spring Batch is and what it’s super useful for.

快速、扎实的介绍了什么是Spring Batch以及它的超级用途。

>> How does JPA and Hibernate define the AUTO flush mode []

Very cool and to the point guide to how flushing – and in particular auto-flushing – behaves differently between Hibernate and JPA.


>> Using Exceptions to Write Robust Software for Stable Production []

A high level writeup about using exception to control execution flow and actually having an disciplined approach to how logging is done and how these exceptions flow through the system.


>> Use JUnit’s expected exceptions sparingly []

An look at using annotations for flow control. And an entertaining peek into Lukas’ “love” for Java annotations.

看一下使用注解进行流程控制。以及对Lukas对Java注解的 “爱 “的有趣窥探。

>> Redefining java.lang.System With Byte Buddy []

A super cool look into JVM level security.


>> Introduction to CompletableFutures []

A straightforward introduction to using the new(ish) CompletableFuture in Java 8.

直接介绍如何使用Java 8中的新(ish)CompletableFuture

Also worth reading:


Webinars and presentations:


Time to upgrade:


2. Technical


>> Feature Toggles [] and >> Categories of toggles []

The feature toggle is such a powerful technique done right. It can save you oh-so much merging time, testing work and just general sanity that it’s not even funny.


This article will be one to follow (because it’s getting published in installments) and come back to.


>> How a Smell in the Tests Points to a Risk in the Design []

As always, a solid deep dive into the nuances of testing and maintainable code, and as always – a good read.


Also worth reading:


3. Musings


>> Enough with the IoT Naysaying Already []

It’s sometimes easier to be negative about new technology that you don’t fully understand. But after being wrong a few times, it’s a good idea to re-evaluate that approach.


On a personal note – I didn’t get Twitter in the early years and it really took a while until I came around, so now I tend to twink twice before making any decision on something new (Spapchat?).


>> What To Avoid When Doing Code Reviews []

Very insightful thoughts on doing code review in a way that is genuinely helpful and helps the developer receiving that feedback grow. Which is very hard to do, but also very worthwhile to strive for.


>> Microservices Use Cases []

The “microservice craze of 2015” (as it will be referred to by historians) is dissipating as sobering, experience-anchored tales are being published.

2015年的 “微服务热”(将被历史学家称为 “微服务热”)正随着清醒的、以经验为基础的故事的发表而消散。

Here are some valid usecases for microservices. On a personal note, I do think that there are a good few more valid usecases where it’s worth paying the complexity cost.


But generally speaking, I wholeheartedly agree with the sentiment of – don’t jump into microservices because you think it would be cool, as that rarely works out.


Also worth reading:



4. Comics


And my favorite Dilberts of the week:


>> You did a good job on the high notes []

>> My phone took care of it []

>> A newly discovered stone age tribe that has never used skype []


5. Pick of the Week

5 本周精选

>> What’s in a Story? []