2 ms·
It's always nice to see projects attempting to explore something a bit different than the status quo (which in Java's case is Spring or hopefully at least Sprin
by KronisLV 3y ago
It's always nice to see projects attempting to explore something a bit different than the status quo (which in Java's case is Spring or hopefully at least Spring Boot). Personally, I've also had good experiences with Dropwizard: https://www.dropwizard.io/en/latest/ https://www.dropwizard.io/en/latest/ Any smaller project will suffer at least somewhat from a lack of documentation/examples, but Dropwizard takes many packages that might be considered idiomatic in the Java ecosystem (Jetty, Jersey, Jackson, Metrics, Logback, Hibernate/JDBI3 and others) and joins them without too much hidden complexity or "magic".
In contrast, something like Spring might suffer from too many examples, many of which are outdated, no longer relevant or considered best practices, as well as there are far too many ways to get something done, leading to lots of confusion. Though the last time I used Dropwizard, I still ran into some issues with adding dependency injection (which is optional), since I had to write some of the code for that myself and couldn't find something that worked nicely enough for my needs. Otherwise it was fine, though probably could benefit from additional tooling like Spring Initializr.
Either way, anything that lets you put a breakpoint on some initialization code is worth a look in my book, vs having multiple layers of indirection and logic dictated by annotations that are not easy to debug, or even understand. That's also why I'm not necessarily the biggest fun of Laravel, Rails (convention over configuration/code) or a few other frameworks, though I acknowledge their usefulness otherwise.
- vips7L 3y agoMy problem with Drop Wizard is the manual wiring you have to do for everything. I would much prefer dropwizard-guicy being the default DI resolution mechanism.