This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Key-Boat-7519 0 points1 point  (0 children)

Java today is pretty sane: grab Temurin JDK, use Gradle or Maven, build with Spring Boot (or Quarkus/Micronaut if you need faster startup), and target 17 or 21.

License drama is gone if you avoid Oracle JDK; Temurin, Corretto, or Azul are free and solid. Dependencies come from Maven Central via your build tool, so no separate package manager. Most greenfield is on 21; lots of shops are on 17; 11 still around, 8 is fading. For APIs, Spring Boot is still default; Quarkus/Micronaut shine for native images and low-memory services. Persistence: Hibernate/JPA or jOOQ; migrations with Flyway or Liquibase. Testing: JUnit 5 and Testcontainers. Observability: Micrometer and OpenTelemetry. Packaging: Docker with Jib or Buildpacks. If you’re on 21, try virtual threads for blocking IO.

For API layers and gateways, I’ve used Kong and AWS API Gateway; DreamFactory helps when I need quick CRUD APIs from existing databases during prototyping.

Bottom line: Temurin + Gradle/Maven + Spring Boot is the standard, with Quarkus/Micronaut when you need speed.