Ask HN: What do you use for making webservices in Java?

4 points by aryamaan ↗ HN

8 comments

[ 1.7 ms ] story [ 62.9 ms ] thread
Spring (normal or boot) MVC, mostly.

Or Jax-RS/Jax-WS with Jersey/CXF/whatever, if you want to stick to standard EE technologies.

95% of our stuff is Java/Spring (big SOA, banking sector). ESB/Gateway is normally Mule or Camel.

do you have experience with other stacks (e.g. Play, Node, Ruby)? What's your experience with them?
We used Python with Django (and django-rest-framework) in my old (non-financial) shop, and it was fine.
Spring Boot is the way everything is going for us these days.
+1 for spring boot.

I dont use the rest repositories/hateos stuff much.

But mvc/data/security, are solid.

The netflix cloud stuff is really nice too, for circuit breaking/routing/discovery.

At schezzle (https://schezzle.com) we use Spring. If you don't want to go the whole DI IoC path, just use Jersey (JAX-RS) directly. Dropwizard isn't a bad implementation either, but can be a bit verbose. Check out swagger for docs as well.
We're moving away from the Play! Framework to Spring Boot as we were porting and using more and more Spring based libraries in our codebase.

Below is pretty much a default list of dependencies for every web service.

* Spring boot

* Lombok

* Javaslang

* Feign

* WireMock

* RestAssured

* AssertJ/Junit/Mockito