java-weekly-186
Java Weekly, Issue 186
Lots of interesting write-ups on Java 9 this week.
Here we go…
1. Spring and Java
===== >> Painlessly Migrating do Java Jigsaw Modules – a Case Study [infoq.com]
Modularity is the next big thing in the upcoming Java version. Let’s have a look at options for modularizing existing applications.
>> A JDeps Primer – Analyzing Your Project’s Dependencies [blog.codefx.org]
A quick and practical overview of JDeps – a tool for analyzing project’s dependencies.
>> Don’t Extract Everything Into a Method [blog.jooq.org]
We can use labels in Java – which is something many developers don’t necessarily remember. These can be beneficial in a few particular scenarios – and might help us avoid artificial extraction of short, locally used methods.
>> Basic Spring web application in Java, Kotlin, and Scala – comparison [rskupnik.github.io]
A very interesting comparison of the same simple Spring application written in 3 different JVM languages.
>> Collections Refueled [oracle.com]
Java 8 was all about lambdas and the Stream API – but the addition of default methods allowed to add additional functionality to already existing interfaces in the Collections API.
Also worth reading:
-
===== https://blog.codecentric.de/en/2017/07/mocks-real-thing-tips-better-unit-testing/[blog.codecentric.de]
-
===== >> Java Command-Line Interfaces (Part 8): Argparse4j [marxsoftware.blogspot.com]
-
===== >> Protecting a Spring Boot App with Apache Shiro [developer.okta.com]
-
===== >> Hibernate Tips: How to fetch associations in batches [thoughts-on-java.org]
-
===== >> Don’t Overdo the “Principle of Least Astonishment” Cargo Cult [blog.jooq.org]
-
===== >> Caching using RestTemplate, Ehcache and ETags [tech.asimio.net]
-
===== >> Creating executable specifications with Spectrum [ontestautomation.com]
-
===== >> JetBrains Elected to the JCP Executive Committee [infoq.com]
Time to upgrade:
-
===== >> Spring Security OAuth 2.2.0.RC1 Released [spring.io] **
-
===== >> Spring Integration Extension for Hazelcast 1.0.0 GA Available [spring.io]
-
===== >> IntelliJ IDEA 2017.2 is Here: Smart, Sleek, and Snappy [blog.jetbrains.com]
-
===== >> Hibernate Search 5.8.0.Beta4 is out with AWS integration [in.relation.to]
2. Technical
===== >> Basic API Rate-Limiting [techblog.bozho.net]
If we want to apply client-specific rate limiting, a standard load balancer might be not enough – especially when there’s no uniform way of identifying clients. Guava RateLimiter can be a good choice here.
>> TestContainers: making Java integration tests easy [zeroturnaround.com]
TestContainers is definitely a very interesting library for quick setup and management of test environments. We can quickly run and manage database instances or anything that can run inside Docker containers.
Also worth reading:
-
===== >> CQRS and Event Sourcing Microservices on CloudFoundry [benwilcock.wordpress.com]
-
===== >> How to Deliver an Event-driven Architecture [content.pivotal.io]
-
===== >> Regression model outputting probability density distribution [horicky.blogspot.com]
-
===== >> Gatling Load Testing Part 2 – Extending Gatling [blog.codecentric.de]
3. Musings
===== >> Blockchain, the next big thing? [blog.codecentric.de]
Blockchain technologies are getting more and more popular.
Also worth reading:
-
===== >> Demystifying the Dependency Inversion Principle [blog.thecodewhisperer.com]
-
===== >> A use-case for Google Fusion Tables [blog.frankel.ch]
-
===== >> Static Analysis to Hide My Ignorance about Global Concerns [daedtech.com]
-
===== >> A Helping Hand [lizkeogh.com]
-
===== >> How to Analyze a Static Analyzer [daedtech.com]
4. Comics
>> I don’t like confrontation [dilbert.com]
>> Some sort of Feng Shui [dilbert.com]
>> That’s not fair [dilbert.com]
5. Pick of the Week
===== >> Focus: The Ultimate Guide on How to Improve Focus and Concentration [jamesclear.com]