At the very beginning of 2014 I decided to start better documenting my reading habits and sharing them here with all of you.

The point is two fold – by curating and documenting, my reading has become more purposeful and diverse. Also – I believe that curation of good content brings a lot of value, helps people explore and allows the best stuff to raise to the top.

Hopefully you’ll enjoy these as we move in the latter half of 2014.

Here we go…

1. Java

>> Writing Tests for Data Access Code – Don’t Test the Framework

Let’s start the review for this week right – the ‘Don’t Test the Framework’ message is one of the more important takeaways that you

>> How to Instantly Improve Your Java Logging With 7 Logback Tweaks

This article has filled a gap in the ecosystem – by taking a good look, backed by real numbers, at the most common logging appenders in the logging landscape today.

>> Keeping things DRY: Method overloading

API design is nuanced and you have to be mindful of so many aspects – good resources on this discipline are few and far between – so this one is well worth reading.

>> Hibernate hidden gem: the pooled-lo optimizer

This article continues the series by going even further on identifiers and generation strategies. Learned a lot from this article – I wasn’t aware of most of the strategies to generate identifier, but I’m definitely going to pay a bit more attention to my identifiers going forward.

2. Spring

>> Spring Framework 4.1 release candidate available

Very cool news this week – the first RC of Spring 4.1 came out. Hop on over and read what’s new – so many things.

>> Spring Framework 4.1 – handling static web resources

Serving your static resources with Spring is not hard – but things like a good reference application and playing well with existing tools are solid and welcomed improvements.

>> $text $search your Documents with Spring Data MongoDB

Full text search with Mongo and Spring Data – it looks like you can do quite a lot without using a full fledged solution like SOLR.

>> Tailing a file – Spring Websocket sample

This is a cool use of the websocket support in Spring – tailing a file.

3. Technical

>> Chess TDD 10: A Knight’s Tale

Since this is the 10th installment of the series, and I covered all of them in earlier weekly reviews, you’re probably either already following this series closely (as well you should), or you’re not interested. On the off chance that you’re undecided – let me nudge you in the right direction – mosey on over and start watching it from the very start. It’s a bit of a time investment, but then again – what good thing isn’t?

>> Collection Pipeline

A long and insightful article about a common functional pattern – operations on collections of data.

Baeldung Pro – NPI EA (cat = Baeldung)
announcement - icon

Baeldung Pro comes with both absolutely No-Ads as well as finally with Dark Mode, for a clean learning experience:

>> Explore a clean Baeldung

Once the early-adopter seats are all used, the price will go up and stay at $33/year.

eBook – HTTP Client – NPI EA (cat=HTTP Client-Side)
announcement - icon

The Apache HTTP Client is a very robust library, suitable for both simple and advanced use cases when testing HTTP endpoints. Check out our guide covering basic request and response handling, as well as security, cookies, timeouts, and more:

>> Download the eBook

eBook – Java Concurrency – NPI EA (cat=Java Concurrency)
announcement - icon

Handling concurrency in an application can be a tricky process with many potential pitfalls. A solid grasp of the fundamentals will go a long way to help minimize these issues.

Get started with understanding multi-threaded applications with our Java Concurrency guide:

>> Download the eBook

eBook – Java Streams – NPI EA (cat=Java Streams)
announcement - icon

Since its introduction in Java 8, the Stream API has become a staple of Java development. The basic operations like iterating, filtering, mapping sequences of elements are deceptively simple to use.

But these can also be overused and fall into some common pitfalls.

To get a better understanding on how Streams work and how to combine them with other language features, check out our guide to Java Streams:

>> Join Pro and download the eBook

Course – LS – NPI EA (cat=REST)

announcement - icon

Get started with Spring Boot and with core Spring, through the Learn Spring course:

>> CHECK OUT THE COURSE

Partner – Moderne – NPI EA (tag=Refactoring)
announcement - icon

Modern Java teams move fast — but codebases don’t always keep up. Frameworks change, dependencies drift, and tech debt builds until it starts to drag on delivery. OpenRewrite was built to fix that: an open-source refactoring engine that automates repetitive code changes while keeping developer intent intact.

The monthly training series, led by the creators and maintainers of OpenRewrite at Moderne, walks through real-world migrations and modernization patterns. Whether you’re new to recipes or ready to write your own, you’ll learn practical ways to refactor safely and at scale.

If you’ve ever wished refactoring felt as natural — and as fast — as writing code, this is a good place to start.