Introduction to Open Liberty
1. Overview With the popularity of microservice architecture and cloud-native application development, there's a growing need for a fast and lightweight application server. In this introductory...
View ArticleWhat’s New in Gradle 6.0
1. Overview The Gradle 6.0 release brings several new features that will help make our builds more efficient and robust. These features include improved dependency management, module metadata...
View ArticleIntro to OpenCV with Java
1. Introduction In this tutorial, we'll learn how to install and use the OpenCV computer vision library and apply it to real-time face detection. 2. Installation To use the OpenCV library in our...
View ArticleJava Weekly, Issue 320
1. Spring and Java >> Java 14 Feature Spotlight: Records [infoq.com] A deep dive into the records preview feature with Java Language Architect Brian Goetz. >> Multitenancy Applications with...
View ArticleSpring Projects Version Naming Scheme
1. Overview It is common to use Semantic Versioning when naming release versions. For example, these rules apply for a version format such as MAJOR.MINOR.REVISION: MAJOR: Major features and potential...
View ArticleBreaking YAML Strings Over Multiple Lines
1. Overview In this article, we'll learn about breaking YAML strings over multiple lines. In order to parse and test our YAML files, we'll make use of the SnakeYAML library. 2. Multi-Line Strings...
View ArticleAdd Build Properties to a Spring Boot Application
1. Introduction Usually, our project's build configuration contains quite a lot of information about our application. Some of this information might be needed in the application itself. So, rather than...
View ArticleThe Java Headless Mode
1. Overview On occasion, we need to work with graphics-based applications in Java without an actual display, keyboard, or mouse, let's say, on a server or a container. In this short tutorial, we're...
View ArticleMongoDB Aggregations Using Java
1. Overview In this tutorial, we'll take a dive into the MongoDB Aggregation framework using the MongoDB Java driver. We'll first look at what aggregation means conceptually, and then set up a dataset....
View ArticleThe BeanDefinitionOverrideException in Spring Boot
1. Introduction The Spring Boot 2.1 upgrade surprised several people with unexpected occurrences of BeanDefinitionOverrideException. It can confuse some developers and make them wonder about what...
View ArticleJenkins Slack Integration
1. Overview When our teams are responsible for DevOps practices, we often need to monitor builds and other automated jobs. In this tutorial, we'll see how to configure two popular platforms, Jenkins...
View ArticleDesign Patterns in the Spring Framework
1. Introduction Design patterns are an essential part of software development. These solutions not only solve recurring problems but also help developers understand the design of a framework by...
View ArticleCache Headers in Spring MVC
1. Overview In this tutorial, we'll learn about HTTP caching. We'll also look at various ways to implement this mechanism between a client and a Spring MVC application. 2. Introducing HTTP Caching When...
View ArticleHow to Handle Java SocketException
1. Introduction In this tutorial, we'll learn the causes of SocketException with an example. We’ll also discuss how to handle the exception. 2. Causes of SocketException The most common cause of...
View ArticleArrays.deepEquals
1. Overview In this tutorial, we'll dive into the details of the deepEquals method from the Arrays class. We'll see when we should use this method, and we'll go through some simple examples. To learn...
View ArticleJava Weekly, Issue 321
1. Spring and Java >> Announcing: The NEW Spring Website! [spring.io] A fresh, clean look to the official Spring site, with a renewed focus on making the site feel more welcoming and comfortable....
View ArticleGetting Started with CRaSH
1. Introduction CRaSH is a reuseable shell that deploys in a JVM and helps us interact with the JVM. In this tutorial, we'll see how to install CRaSH as a standalone application. Also, we'll embed in a...
View ArticleDifference Between Docker Images and Containers
1. Overview Docker is a tool for creating, deploying, and running applications easily. It allows us to package our applications with all the dependencies, and distribute them as individual bundles....
View ArticleModifying the Response Body in a Zuul Filter
1. Overview In this tutorial, we're going to look at Netflix Zuul's post filter. Netflix Zuul is an edge service provider that sits between an API client and a plethora of microservices. The...
View ArticleIntroduction to the jcabi-aspects AOP Annotations Library
1. Overview In this quick tutorial, we'll explore the jcabi-aspects Java library, a collection of handy annotations that modify the behavior of Java application using aspect-oriented programming (AOP)....
View Article