Talk on Java features up to 14

Recently, I’ve prepared a talk on up to date Java features with very practical examples.

The whole presentation is centered around a Java 8 application, which I migrate live to Java 14, while talking about the coolest features, why use them and more importantly when to do so.

Continue reading “Talk on Java features up to 14”

Spring Boot project using Java 9 modules – part 2 – adding Spring Data JPA

Objective

This is the second installment in the series, and it builds on top of the previously developed code.

In part 1 I set up a Spring Web application with an endpoint returning a hard coded value. Part 1 can be found here.

In this part I added integration to a database (HSQL, in memory) and I’ve used a JpaRepository to add and view rows from the database

Continue reading “Spring Boot project using Java 9 modules – part 2 – adding Spring Data JPA”

API Versioning

About a year ago, I’ve written an article about evolving APIs. It describes some common situations, and also contains some tips on how to handle them, while minimizing the risk to your project.

Key recommendations:

  • improve the design of your API. In addition to identifying the business domain for a microservice, have a look at its dependencies as well. Reducing the number of possible interactions allows one to keep control even with increased complexity. It may also decrease the number of scenarios which need testing;
Continue reading “API Versioning”

API First vs. Code first

Prin intermediul asociatei AgileHub din Brasov, am avut recent un meetup on-line cu tema ‘API First vs. Code First’.

Prezentarea a fost urmata de o sesiune de live coding.

Inregistrarea completa o puteti vedea aici: https://www.youtube.com/watch?v=8RE7uuQir1c

Codul complet poate fi gasit aici:

Continue reading “API First vs. Code first”

Spring Boot project using Java 9 modules – part 1

Objective

I aim to build a sample multi-module maven project with Spring Boot. Each maven module will also be a names Java module.

The project will expose a simple REST API. The endpoints will be secured using Spring Security with OAuth. The back-end will connect to a relational database (configuration will be provided for PostgreSQL).

It will follow a layered architecture, with the service layer having transactional operations, implemented using Spring’s @Transactional annotation.

Continue reading “Spring Boot project using Java 9 modules – part 1”

Orange ice cubes

This is a fantastic way to spend 5 minutes with your kid: get a tray for ice cubes, add a piece of fruit in each one (we’ve had red currants), then fill them with freshly squeezed orange juice.

Put them in the freezer and enjoy later either.

We’ve used them to quickly cool down tea, while also adding extra flavor.