While that's entirely true, the glueing of those frameworks together is very common in the Enterprise Java development space especially around 2006 when this was taken.
I'm a big fan of the JVM and the Java ecosystem but in many ways the JVM ecosystem is split into two worlds: frameworks or libraries. This would be an example of a framework heavy development model where god knows what is going on between the outside world, your biz logic and the database calls.
Man the java era was seriously seriously wrong[1]. IMO it's only there because people invested so much, they'll never cut their losses and stay in denial for one or two decades.
[1] java 8 makes thinks bearable, but even then you feel like sculpting chapter 1 lisp/haskell idioms in granite with a spoon.
I feel like I get pretty far with just https://javalin.io/ or http://sparkjava.com/. They're pretty similar but Javalin is being built by a maintainer of Spark and inherits many of the lessons learned from it.
http://vertx.io/ is extremely powerful and relatively popular. We've used in production for years. Note that it is a non-blocking framework so there is a bit of a learning curve coming from e.g. Java EE.
Comments
While that's entirely true, the glueing of those frameworks together is very common in the Enterprise Java development space especially around 2006 when this was taken.
I'm a big fan of the JVM and the Java ecosystem but in many ways the JVM ecosystem is split into two worlds: frameworks or libraries. This would be an example of a framework heavy development model where god knows what is going on between the outside world, your biz logic and the database calls.
Man the java era was seriously seriously wrong[1]. IMO it's only there because people invested so much, they'll never cut their losses and stay in denial for one or two decades.
[1] java 8 makes thinks bearable, but even then you feel like sculpting chapter 1 lisp/haskell idioms in granite with a spoon.
Can you mention which frameworks and glues are common today ?
I feel like I get pretty far with just https://javalin.io/ or http://sparkjava.com/. They're pretty similar but Javalin is being built by a maintainer of Spark and inherits many of the lessons learned from it.
These are basically thin wrappers on Jetty.
SQL: Mybatis or JDBI.
SQL Migrations: Flyway
JSON: Jackson, usually
Redis: Jedis
Spring Boot, but that includes Spring Security (was Acegi) and Spring MVC. Spring Data (JPA) has taken over from Hibernate.
You can get a long way with just Spark: https://github.com/perwendel/spark
Official website, for those wondering
http://sparkjava.com/
http://vertx.io/ is extremely powerful and relatively popular. We've used in production for years. Note that it is a non-blocking framework so there is a bit of a learning curve coming from e.g. Java EE.
Acegi/Spring/Hibernate :>
dropwizard.io
+1 for dropwizard; Spring is too big, dropwizard is just right. I've always preferred JDBI over JPA too.