10
Dropwizard Srinivas Katakam Presented to JUG Hyderabad 21-January-2017

Dropwizard

Embed Size (px)

Citation preview

Page 1: Dropwizard

Dropwizard

Srinivas KatakamPresented to JUG Hyderabad21-January-2017

Page 2: Dropwizard

Agenda

• What is this?• Benefits• Dropwizard bundle• Building and running application• Next steps• YAML• JDBI• Demo• Questions

Page 3: Dropwizard

What is this?

A damn simple library

For building production ready

RESTful web services

Page 4: Dropwizard

Benefits

Speed up• Time to Market

Reduced• Maintenance burdens

Lean• Deployment size

Page 5: Dropwizard

Dropwizard bundle

DropwizardEcosystem

Jetty for HTTP

Jercy for REST

Jackson for

JSON

Metrics for

metrics

Guava

Logback

JDBI

Liquibase

Page 6: Dropwizard

Building and running application

Setting upCreating A

Configuration Class

Creating An Application

Class

Creating A Representation

Class

Creating A Resource Class

Registering A Resource

Creating A Health Check

Adding A Health Check

Building Fat JARs

Versioning JARS Running Application Next Steps

Page 7: Dropwizard

Next Steps

Configuration Settings

• YAML• Hibernate Validator

Representations

• RESTful entities

Databases

• DAO• JDBI

Health checks

• Healthy• Unhealthy

Page 8: Dropwizard

YAML

YAML: YAML Ain't Markup Language

What It Is: YAML is a human friendly data serialization standard for all programming languages

Example: config.yml

server:rootPath: /api/*dateFormat: yyyy-MM-dd'T'HH:mmZ

Page 9: Dropwizard

JDBIJDBI

A SQL convenience library built on top of JDBC

Fluent style(Older)

Query instances are SQLStatement instances specialized for SQL queries

SQL object style(Newer)

A declarative mechanism for a common JDBI usage

Page 10: Dropwizard

Questions???