Spring Framework has a good support for injecting property values found from properties files into bean or @Configuration classes. However, if we inject individual property values into these classes, we will face some problems. This blog post identifies these problems and describes how we can solve them. Let’s get started. If you use Spring Boot, […] Read more
If our code has obvious faults, we are very motivated to improve it. However, at some point we decide that our code is "good enough" and move on. Typically this happens when we think that the benefits of improving our existing code are smaller than the required work. Of course, if we underestimate our return […] Read more
This blog post describes how we can create a web application project with Gradle. To be more specific, we want to create a web application project that uses Java, package our web application into a WAR file, and run our web application in a development environment. Let’s find out how we can fulfil these requirements. […] Read more
One of the misconception that is often associated with agile software development is that agile teams won’t write any technical documentation. I assume that this misconception is so common because the agile manifesto states that we should value working software over comprehensive documentation. Also, since some of us have experience from writing long technical documents […] Read more
There was a time (not so long ago) when we designed everything before we wrote any code. We gathered the requirements of our application and wrote the requirement specification. We took these requirements and designed an architecture that helped us to fulfill them. We wrote an architecture design document as a guide that we followed […] Read more
Although we can create a working application by using only one module, sometimes it is wiser to divide our application into multiple smaller modules. Because this is a rather common use case, every self-respecting build tool must support it, and Gradle is no exception. If a Gradle project has more than one module, it is […] Read more