Do you want to know how to develop your skillset to become a Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you our best selling eBooks for FREE!


1. JPA Mini Book

2. JVM Troubleshooting Guide

3. JUnit Tutorial for Unit Testing

4. Java Annotations Tutorial

5. Java Interview Questions


and many more ....



Applying HATEOAS to a REST API with Spring Boot


HATEOAS is an acronym for Hypermedia As The Engine Of Application State. Even after expanding that for you it still might not mean a lot. HATEOAS is an extra level upon REST and is used to present information about the REST API to the client, allowing for a better understanding of the API without the need to bring up the ...

Read More »

Securing resources using Spring Security with OAuth


1. Introduction In this tutorial, we will check out how we can use Spring Security with OAuth to secure the admin resources on the server based on the path pattern (/api/**). Another path pattern (/oauth/token) we have configured which will help configured authorization server generate the access token. Note that we will be using Password Grant Type in this demo ...

Read More »

Java 8 – Sorting HashMap by values in ascending and descending order

In the last article, I have shown you how to sort a Map in Java 8 by keys and today, I’ll teach you how to sort a Map by values using Java 8 features e.g. lambda expression, method reference, streams, and new methods added into the java.util.Comparator and Map.Entry classes. In order to sort any Map e.g. HashMap, Hashtable, LinkedHashMap, TreemMap, or even ConcurrentHashMap, ...

Read More »

Building a RESTFul Service using Spring Boot


Everyone is talking about Microservices such as WSO2 Microservice Framework, Spring Boot, etc. Since I haven’t worked on any Spring related project since a very long time, I thought to implement a simple RESTFul service using Spring Boot. So I started with Spring documentation. It is straightforward.  You can create the structure of your project using “Spring Initializr“. This is an online ...

Read More »

Fixed-rate vs. fixed-delay – RxJava FAQ

If you are using plain Java, since version 5 we have a handy scheduler class that allows running tasks at fixed rate or with fixed delay: import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(10); Basically it supports two types of operations: scheduler.scheduleAtFixedRate(() -> doStuff(), 2, 1, SECONDS); scheduler.scheduleWithFixedDelay(() -> doStuff(), 2, 1, SECONDS); scheduleAtFixedRate() will make sure doStuff() is invoked precisely every second ...

Read More »

Alternatives for Agile and Lean Roadmapping: Part 4, Resilience, Prediction, & Feedback

One of my clients was trying—valiantly—to make their quarterly planning sessions work. They prepared, getting the big hotel room. They had plenty of supplies. The planning even went well. However, within two weeks, their plan had no relation to reality. That meant that for the next ten weeks, the product owners were “on their own.” And, because the product managers ...

Read More »

Definition of Ready considered harmful

Earlier this week I was with a team and discussion turned to “the definition of ready.” This little idea has been growing more and more common in the last couple of years and while I like the concept I don’t recommend it. Indeed I think it could well reduce Agility. To cut to the chase: “Definition of ready” reduces agility ...

Read More »

Java Command-Line Interfaces (Part 14): google-options

The GitHub page for google-options states that google-options is a “command line argument parsing library from the folks at Google (java).” The page goes on to say, “This is the command-line arguments parser from the Bazel Project. The package has been split out into a separate jar for general utility.” This blog post demonstrates applying google-options to processing command ...

Read More »