Analyzing a Multi-Module Maven Project with SonarQube

SonarQube Setup Start by downloading SonarQube from the official website. Unzip and navigate to the bin directory, you should see multiple folders linux-x86-32 linux-x86-64 macosx-universal-64 windows-x86-32 windows-x86-64 Navigate into the folder depending on your current operating system, i.e. linux-x86-64. Execute the sonar.sh script. Sonar should now startup. After a few seconds, you can navigate to…

Writing/Reading Java Properties Files without external dependencies

In this short tutorial we focus on writing/reading Java Properties files without external dependencies. Quoting Wikipedia: .properties is a file extension for files mainly used in Java related technologies to store the configurable parameters of an application. They can also be used for storing strings for Internationalization and localization; these are known as Property Resource…

XRebel Java Profiler: The lightweight Java Profiler

The XRebel Java Profiler ist a lightweight Java Profiler frmo zeroturnaround, the makers of JRebel and also the Optimizer for Eclipse Plugin (Speeding up Eclipse). To include the profiler in your web application, a single VM argument needs to be passed and a little icon will be displayed at the bottom left of every page.…

Optimistic vs Pessimistic Locking and Transactions

What are transactions and why do we need them? The classic, relational database systems, such as MySQL, Postgres come with ACID (Atomicity, Consistency, Isolation, Durability). We start a transaction, execute our database changes and commit. If a single action fails, the transaction will be rolled back and no change is applied. Only if every change…

Java 8 Lambda Tutorial: Einstieg in Lambda und Streams

Mit Java 8 wurden so genannte Lambdas (oder Closures) eingeführt. Das Iterable Interface und das Collection Interface haben neue Methoden bekommen. Die API erlaubt einen funktionalen Programmierstil – was vorher noch nicht möglich war. Mit diesem Java 8 Lambda Tutorial möchte ich euch eine kleine Einführung mit vielen praktischen Beispielen geben, damit ihr einen Ansatz habt,…

Java 8 Date Time API: Jodatime based date and time functions

Java 8 contains a brand new Joda-time inspired Date Time API within the java.time package. About time! The following image offers an overview of the API’s structure.   LocalDate Let’s have a look at java.time.LocalDate first. A LocalDate represents a single Date in a specific year, month and date, no time. If you also need…

Java 9 Features

Es gibt bereits die ersten Early Access Versionen von Java 9, zu finden unter JDK 9 Download – Early Access. Offiziell soll Java 9 im Herbst 2016 erscheinen. Hier bekommt ihr einen Einblick in die kommenden Features. Inhaltsverzeichnis Projekt Jigsaw – Modularer Source Code Erweiterung der Process API Leichtgewichtige JSON API Money und Currency API Lock/Thread Contention…