It´s just about caching, honey!

Sometimes we want to read data once from a store and cache it in memory because retrieving it from the source is rather expensive. There are two strategies to achieve that:

The first way of caching is achieved by loading the entire data of a given type from some source at once and access it from the cache. This is suitable for small caches or if most cache entries are likely to be read.

An alternative is a growing cache. Whenever data is requested from the cache the first time the cache will load it from the given source, cache it and finally, return it to the client. If data is requested from the second time on it will be returned from the cache without accessing the source.

Continue reading “It´s just about caching, honey!”

Using value object properties in JPA entities

Motivation

Most of the time, when we design basic properties of a JPA entity we use easy-to-map types like java.lang.String, java.math.BigDecimal, etc.. In this post, I will discuss the the usage of value objects​1​ instead which are known from the concept of domain driven design​2​.

I will explain the benefits of using value objects and how to integrate them into JPA entities. Furthermore, this post provides useful hints for DbUnit tests of such entities.

Continue reading “Using value object properties in JPA entities”

Handling multiple resource bundles in Java

The standard Java way to handle internationalization is to use resource bundles. It is considered to be a good practice to have many resource bundles containing only a few entries rather than having one huge resource bundle which is hard to maintain.

On the other hand, the developer who wants to use the resources must know every resource bundle he needs. Furthermore, he also needs to know which resource bundle is containing the particular resource he is currently trying to access. Continue reading “Handling multiple resource bundles in Java”

Wedding planning with Scrum 5/5: Definition of “Done”

Part 5: The definition of “Done” and the conclusion

In 2016 my wife and I married. In order to support the planning of the wedding, I introduced Scrum. In this blog, I will share our experience of this experiment.

This is the fifth and final out of 5 parts. In this part I will define our definition of “Done”. Finally, I will discuss whether my wife and I achieved our goals by using Scrum for wedding planning. Continue reading “Wedding planning with Scrum 5/5: Definition of “Done””

Wedding planning with Scrum 4/5: Events

Part 4: Events

In 2016 my wife and I married. In order to support the planning of the wedding, I introduced Scrum. In this blog, I will share our experience of this experiment.

This is the fourth out of 5 parts. In this part I will describe how we customized the Scrum events to fit our needs. Continue reading “Wedding planning with Scrum 4/5: Events”

Wedding planning with Scrum 3/5: Artefacts

Part 3: Artefacts

In 2016 my wife and I married. In order to support the planning of the wedding, I introduced Scrum. In this blog, I will share our experience of this experiment.

This is the third out of 5 parts. In this part I will describe the artefacts we used during our wedding planning. Continue reading “Wedding planning with Scrum 3/5: Artefacts”

Wedding planning with Scrum 2/5: Roles

Part 2: Roles

In 2016 my wife and I married. In order to support the planning of the wedding, I introduced Scrum. In this blog, I will share our experience of this experiment.

This is the second out of 5 parts. In this part I will explain how the special Scrum context of wedding planning affects the Scrum roles. Continue reading “Wedding planning with Scrum 2/5: Roles”

Wedding planning with Scrum 1/5: Motivation and context

Part 1: Motivation and the context of wedding planning

In 2016 my wife and I married. In order to support the planning of the wedding, I introduced Scrum. In this blog, I will share our experience of this experiment.

This is the first out of 5 parts. In this part I will explain my motivation for using Scrum. Furthermore, I will describe the special Scrum context of wedding planning. Continue reading “Wedding planning with Scrum 1/5: Motivation and context”