Lots of interesting writeups on Java 9 this week.
Here we go…
1. Spring and Java
Spring has always adopted POJO-based approaches, now it's time to focus on functional approaches. Spring Cloud is getting enhanced with a possibility of defining beans from function implementations – everything well integrated with Reactor.
Using projection instead of entity-based fetching can significantly improve overall performance – which is not a surprise.
A practical look at Service Blocks using Spring Cloud Function and AWS Lambda. If you're interested in seeing Spring Cloud Function in action – definitely have a look.
Scala and Kotlin have their own solutions to problems caused by multiple inheritance – worth having a look.
When working with microservices, we often need to mock/stub HTTP endpoints – Hoverfly is one of the better tools for doing that.
Java 9 will be (hopefully) released soon and IDE providers are coming up with new features for their tools – this time, we can have a look at new support in Intellij IDEA.
Hibernate already supports most of the MySql's features, but there are still a few things to remember that are not entirely abstracted away.
Also worth reading:
Webinars and presentations:
Time to upgrade:
2. Technical
Package structure in Java projects is often neglected or applied mindlessly – here we can see a comparison of the two most popular approaches: package-by-layer vs. package-by-feature.
Raising the abstraction level and passing commands to objects can result in better decoupling – and Java 8 Lambda Expressions make it much easier and concise.
Also worth reading:
3. Musings
There is no universal answer to this problem – pick one of the scientific methods, follow it, and use the best tools possible.
We should make mistakes – those expose lacks in our knowledge that we can eventually fix.
Also worth reading:
4. Comics
And my favorite Dilberts of the week:
5. Pick of the Week
res – REST with Spring (eBook) (everywhere)