In part 1 of this post, we learned how to create a Spring Boot application, create a Docker image for it and push it to a Docker registry. At the end, we installed Minikube in an Ubuntu VM. In this second part, we will get familiar with some Kubernetes terminology, deploy the application to our Minikube cluster and update the application. The sources used for the application can be found at GitHub. The Docker registry which we use can be found here (or you can use your own Docker registry).
In this post we will take a look how we can build a Spring Boot application, create the Docker image, deploy it to a Docker registry and deploy it to a Kubernetes cluster. This will give us the opportunity to get acquainted with the basics from building an application up to deploying it to Kubernetes. Sources can be found at GitHub.
In this post we will take a look at Project Lombok and what it has to offer us. Project Lombok reduces boilerplate code by making use of annotations in your code. Main advantage is achieved with POJO’s (Plain Old Java Objects): you don’t have to code getters and setters anymore. Although your IDE provides the possibility to generate getters and setters, with Project Lombok you also don’t have to read them anymore. Source code used in this post can be found at GitHub.
In this post we will take a closer look at Spring Actuator and highlight some changes of it in Spring Boot 2.0. We will discuss some of the endpoints and will create a custom endpoint to our application. The sources can be found at GitHub.
In part 2 of this post, we will refactor the application written in part 1 in order to use a database. We will take a short look at the choices we have when selecting a database in combination with Spring WebFlux, use an embedded version of the database, refactor the sources and find solutions for the problems we encounter. The code can be found at GitHub in branch mongodb.
In this post we will continue exploring the capabilities of Spring WebFlux by means of creating a basic CRUD application. We will not be using a database in this post because I did not want to be distracted with database stuff at this moment 😉 Adding a database will be handled in part 2. Furthermore, we will implement a few CRUD operations and see how we can unit test a Flux. Source code can be found at GitHub.
This post will be about how I got started with Spring WebFlux. A few weeks ago, I started to read in detail about Spring WebFlux, Reactive Streams, etc. Looking back at my journey, I did things in the wrong order. In this post I have tried to structure the information, in order to give you a plan for getting started with Spring WebFlux. The examples can be found on GitHub. Continue reading “Spring WebFlux: Getting started”
Did you ever had the problem that you did not know which version of your application was deployed on e.g. a test environment? Or you had to manually adapt version information for each release in order to make it available in an About-dialog? Then the Maven git commit id plugin comes to the rescue! In this post, we will build a Spring Boot application with a RESTful webservice for retrieving versioning information. The only thing we will have to do, is to configure the Maven git commit id plugin and create the webservice. After this, versioning information is automatically updated during each build!
In this last post about Java 9 modules we will take a closer look at some of the modules directives. We will explain what they mean and show the usage by means of an example. We will build upon the example used in part 1 and part 2, it is advised to read these posts before continue reading. The sources used in this post are available on GitHub in branch feature/modules-directives.
In this post we will take a closer look at Java 9 Modules. The focus lies on how modules affect us when using an IDE like IntelliJ and using a build tool like Maven. It is advised to read the post Java 9 Modules introduction (part 1). We will use the same example, starting with a single module application and afterwards converting it into a multi-module application. The examples used, can be found on GitHub.