Need advice about which tool to choose?Ask the StackShare community!

Dropwizard

312
365
+ 1
182
Jersey

151
125
+ 1
6
Add tool

Dropwizard vs Jersey: What are the differences?

Introduction:

This article will highlight the key differences between Dropwizard and Jersey, two popular frameworks used for building web applications. Dropwizard is a Java-based framework that combines multiple libraries, including Jersey, to simplify the development of RESTful web services. Jersey, on the other hand, is a full-featured, open-source framework specifically designed for building RESTful Web Services in Java.

  1. Dropwizard architecture: Dropwizard follows a holistic approach to building web applications. It combines several pre-existing libraries, such as Jersey for RESTful web services, Jetty for HTTP server capabilities, Jackson for JSON processing, and more. Dropwizard provides a comprehensive and integrated development stack, making it easier for developers to work on various aspects of a web application simultaneously.

  2. Jersey as a standalone framework: Jersey, as its name suggests, is primarily focused on providing a robust framework for developing RESTful web services. Unlike Dropwizard, it does not include additional libraries for aspects like web server or database connectivity out-of-the-box. Jersey can be used as a standalone framework, allowing developers the flexibility to choose the supporting libraries according to their requirements and preferences.

  3. Configuration management: Dropwizard provides built-in configuration management capabilities, allowing developers to externalize configuration settings from the application code. Dropwizard uses YAML files for configuration, making it easy to change settings without modifying the code. This separation of configuration from code promotes better maintainability and allows for easier deployment across different environments.

  4. Limited customization in Dropwizard: While Dropwizard provides a comprehensive development stack, it comes with limited customization options. Dropwizard follows a convention-over-configuration approach, making some decisions for the developers to streamline the development process. However, this can be limiting for projects requiring extensive customization or unique architectural choices.

  5. Extensive customization in Jersey: Jersey, being a standalone framework, offers developers more flexibility and control over the customizations of their web services. Developers can choose the specific libraries and configurations they want to use with Jersey, allowing for a more tailored approach to building RESTful web services. This increased flexibility can be beneficial for projects with specific requirements or complex architectures.

  6. Ease of getting started: Dropwizard provides a comprehensive, opinionated setup for building web applications, making it easier for developers to get started quickly. It simplifies the initial project setup by providing sensible defaults and integrates the required libraries seamlessly. In contrast, Jersey, being a standalone framework, requires developers to make choices and set up the necessary components manually. This may require additional effort and time to get started with a basic web application.

In summary, Dropwizard is an opinionated framework that combines multiple libraries to simplify the development of web applications, while Jersey is a standalone framework designed specifically for building RESTful web services. Dropwizard provides a holistic approach and built-in configuration management, but with limited customization options. Jersey offers extensive customization and flexibility, but requires more manual setup and decision-making.

Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Dropwizard
Pros of Jersey
  • 27
    Quick and easy to get a new http service going
  • 23
    Health monitoring
  • 20
    Metrics integration
  • 20
    Easy setup
  • 18
    Good conventions
  • 14
    Good documentation
  • 14
    Lightweight
  • 13
    Java Powered
  • 10
    Good Testing frameworks
  • 7
    Java powered, lightweight
  • 5
    Simple
  • 4
    Scalable
  • 3
    Great performance, Good in prod
  • 2
    Open source
  • 2
    All in one-productive-production ready-makes life easy
  • 4
    Lightweight
  • 1
    Fast Performance With Microservices
  • 1
    Java standard

Sign up to add or upvote prosMake informed product decisions

Cons of Dropwizard
Cons of Jersey
  • 2
    Slightly more confusing dependencies
  • 1
    Not on ThoughtWorks radar since 2014
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    - No public GitHub repository available -

    What is Dropwizard?

    Dropwizard is a sneaky way of making fast Java web applications. Dropwizard pulls together stable, mature libraries from the Java ecosystem into a simple, light-weight package that lets you focus on getting things done.

    What is Jersey?

    It is open source, production quality, framework for developing RESTful Web Services in Java that provides support for JAX-RS APIs and serves as a JAX-RS (JSR 311 & JSR 339) Reference Implementation. It provides it’s own API that extend the JAX-RS toolkit with additional features and utilities to further simplify RESTful service and client development.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Dropwizard?
    What companies use Jersey?
    Manage your open source components, licenses, and vulnerabilities
    Learn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Dropwizard?
    What tools integrate with Jersey?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Dropwizard and Jersey?
    Spring Boot
    Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration.
    Play
    Play Framework makes it easy to build web applications with Java & Scala. Play is based on a lightweight, stateless, web-friendly architecture. Built on Akka, Play provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications.
    Spring
    A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.
    Dropwizard Metrics
    It is a Java library which gives you insight into what your code does in production. It provides a powerful toolkit of ways to measure the behavior of critical components in your production environment. It provides you with full-stack visibility.
    Micronaut Framework
    It is a modern, JVM-based, full-stack framework for building modular, easily testable microservice and serverless applications. It features a Dependency Injection and Aspect-Oriented Programming runtime that uses no reflection.
    See all alternatives