Wim Deblauwe is a freelance Java Developer, blogger, open-source enthusiast and author of “Taming Thymeleaf”, a book on working with Spring Boot and Thymeleaf.
I always struggled with how to implement equals and hashcode, until I learned about the difference between entities and value objects.
To correctly implement equals() and hashCode(), it is important to first determine if your object is a value object or an entity.
If it is one of the those, you can follow the rules set forth in this article. If it is neither (e.g., a Controller, Service, Repository) then you probably don’t want to override the methods.Wim Deblauwe
One of the things that distinguishes a decent API from one that is a pleasure to work with is robust error handling. Nothing is more frustrating than using some API and getting back cryptic errors where you can only guess why the server is not accepting your request.
Spring Boot lets you customize the error handling for your application, but there is quite a lot of low-level coding involved if you want to do this correctly.Wim Deblauwe
Spring Boot is heavily promoted as the best way to write REST API’s in Java, but it can also be used as a very good alternative to Laravel/PHP, Rails/Ruby, or Django/Python to write server-side rendered HTML for Java developers.
When combining the ease of use of Spring Boot with the power of Java and the easy templating of Thymeleaf, you have a very powerful combination that makes Java developers extremely productive to write web applications.
The book Taming Thymeleaf teaches you step-by-step how to get started with those technologies and build a fully fledged web application including security, validation, internationalization, testing and more.Wim Deblauwe