The Awesome Java feed


Identical Binary Trees (Same Tree) problem

Given two binary trees, write a function to check if they are the same or not.

Two binary trees are considered the same if they are structurally identical and the nodes have the same value.
Article Added by: callicoder //

Valid Parentheses problem

Given a string containing just the characters (, ), {, }, [ and ], determine if the input string is valid.

An input string is valid if:

Open brackets must be closed by the same type of brackets.
Article Added by: callicoder //

Merge Two Sorted Linked Lists

Merge two sorted linked lists and return it as a new list. The new list should also be sorted.
Article Added by: callicoder //

StreamEx v0.7.1

A new version of StreamEx has been released
New Version

Apache Cayenne

Provides clean, static API for data access. Also includes GUI Modeler for working with database mappings, DB reverse engineering and generation.
Featured Library // Category ORM


Let's revisit Java in 2019

Article Popular Story //

Hamcrest v2.2

A new version of Hamcrest has been released
New Version


Fast and reliable message broker built on top of Kafka.
Featured Library // Category Messaging

Why does Java have Checked Exceptions

Article Popular Story //

Last 7 Days

Byte Buddy v1.10.2

A new version of Byte Buddy has been released
New Version

Thymeleaf vs FreeMarker

Popular comparison
  • Thymeleaf - Aims to be a substitute for JSP and works for XML files in general.
  • FreeMarker - General templating engine without any heavyweight or opinionated dependencies.


Off-the-shelf constraint satisfaction problem solver, which uses constraint programming techniques.
Featured Library // Category Constraint Satisfaction Problem Solver

Spring Boot Actuator Complete Tutorial with Example

Article Added by: TechBlogStation //

Longest Palindromic Substring

Given a string s, find the longest palindromic substring in s.
Article Added by: callicoder //

Maximum Contiguous Subarray Sum

Given an integer array numbers, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.
Article Added by: callicoder //

Add two numbers represented using Linked Lists

You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked list.

You may assume the two numbers do not contain any leading zero, except the number 0 itself.
Article Added by: callicoder //

Design and implement a data structure for Least Recently Used (LRU) cache

Design and implement a data structure for Least Recently Used (LRU) cache. It should support the following operations:
get(key) - Get the value (will always be positive) of the key if the key exists in the cache, otherwise return -1.
put(key, value) - Set or insert the value for the given key in the cache. When the cache has reached its capacity, it should invalidate the least recently used item before inserting a new item.
The cache is initialized with a positive capacity.
Article Added by: callicoder //

Reverse a Singly Linked List

Tutorial Added by: callicoder //

Two Sum Problem solution in Java

Given an array of integers, return the indices of the two numbers whose sum is equal to a given target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.
Tutorial Added by: callicoder //

Feign vs Retrofit

Popular comparison
  • Feign - HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket.
  • Retrofit - Type-safe REST client.

Apache PDFBox vs iText

Popular comparison
  • Apache PDFBox - Toolbox for creating and manipulating PDF.
  • iText - Creates PDF files programmatically but requires a license for commercial purposes.

Awesome Java Newsletter ยป 178

Top Stories
  • What software technologies will earn you the highest pay?
  • Don't Put Fat Jars in Docker Images
  • Which programming language is the best for blockchain?
Follow us on Twitter @JavaLibHunt

Apache Thrift v0.13.0

A new version of Apache Thrift has been released
New Version

Spring Boot 2.2.0

Update Popular Story //


Opinionated framework for JSON- or GraphQL-APIs based on a JPA data model.
Featured Library // Category REST Frameworks

FreeMarker vs

Popular comparison
  • FreeMarker - General templating engine without any heavyweight or opinionated dependencies.
  • - Logic-less and semantic Mustache templates.

H2 v1.4.200

A new version of H2 has been released
New Version


Command-line Argument Parsers CLI
Featured Library // Category Command-line Argument Parsers