Dropwizard入门及开发步骤
2017-09-07 14:37
295 查看
Dropwizard介绍
Dropwizard结构的服务组成
开发步骤
嵌入式Jetty,一个应用程序被打包成一个Jar文件,并开始自已嵌入的Jetty容器。除此之外无任何其它war文件和外部servlet容器
JAX-RS : Jersey,用来写基于REST的Web服务
JSON:REST服务数据传递处理全部用JSON,使用Jackson库
日志:使用 Logback 和SLF4
数据库:使用Hibernate,集成ORM框架 for DB
指标:使用Metrics, Metrics是一个给JAVA服务的各项指标提供度量工具的包,在JAVA代码中嵌入Metrics代码,可以方便的对业务代码的各个指标进行监控,同时,Metrics能够很好的跟Ganlia、Graphite结合,方便的提供图形化接口。
Dropwizard源码: https://github.com/Dropwizard/Dropwizard
入门:http://www.dropwizard.io/0.9.2/docs/getting-started.html
Application:该服务的主入口,定义该服务使用哪个配置文件,开放哪些Resource,该服务需要哪些HealthCheck等等。
Resource:定义一个资源,包括如何获取该资源,对该资源做Get/Post/Delete/Query时,对应的各种业务逻辑。
Representation:定义了一个服务返回值对象,当服务返回该对象时,会自动的把该对象按属性值生成一个Json格式的字符串返回给服务调用者。
HealthCheck:在Dropwizard为每个服务提供的OM框架中用到,通过它可以随时检测当前服务是否可用。
每个Dropwizard应用都有一个对应配置类configuration,用于指定特定的环境参数。
这个配置类扩展自 io.Dropwizard.Configuration类,应用启动时,系统将从YAML配置文件反序列化读取对应的参数。
Jersey注解使用说明:
https://jersey.java.net/documentation/latest/jaxrs-resources.html
Swagger注解使用说明:
https://github.com/swagger-api/swagger-samples/tree/master/java/java-Dropwizard
Dropwizard结构的服务组成
开发步骤
Dropwizard介绍
Dropwizard是一个微服务框架, 是各项技术的一个集成封装。它包含了以下组件:嵌入式Jetty,一个应用程序被打包成一个Jar文件,并开始自已嵌入的Jetty容器。除此之外无任何其它war文件和外部servlet容器
JAX-RS : Jersey,用来写基于REST的Web服务
JSON:REST服务数据传递处理全部用JSON,使用Jackson库
日志:使用 Logback 和SLF4
数据库:使用Hibernate,集成ORM框架 for DB
指标:使用Metrics, Metrics是一个给JAVA服务的各项指标提供度量工具的包,在JAVA代码中嵌入Metrics代码,可以方便的对业务代码的各个指标进行监控,同时,Metrics能够很好的跟Ganlia、Graphite结合,方便的提供图形化接口。
Dropwizard源码: https://github.com/Dropwizard/Dropwizard
入门:http://www.dropwizard.io/0.9.2/docs/getting-started.html
Dropwizard结构的服务组成
Configuration:用于设置该服务的配置,比方说在服务开放在哪个端口,数据库配置是怎样的等等。Application:该服务的主入口,定义该服务使用哪个配置文件,开放哪些Resource,该服务需要哪些HealthCheck等等。
Resource:定义一个资源,包括如何获取该资源,对该资源做Get/Post/Delete/Query时,对应的各种业务逻辑。
Representation:定义了一个服务返回值对象,当服务返回该对象时,会自动的把该对象按属性值生成一个Json格式的字符串返回给服务调用者。
HealthCheck:在Dropwizard为每个服务提供的OM框架中用到,通过它可以随时检测当前服务是否可用。
开发步骤
maven引入Dropwizard
<dependencies> <dependency> <groupId>io.Dropwizard</groupId> <artifactId>Dropwizard-core</artifactId> <version>${Dropwizard.version}</version> </dependency> </dependencies>
定义Configuration 类和 yml文件
每个Dropwizard应用都有一个对应配置类configuration,用于指定特定的环境参数。
这个配置类扩展自 io.Dropwizard.Configuration类,应用启动时,系统将从YAML配置文件反序列化读取对应的参数。
定义resource
Dropwizard中大量使用了注解,api-doc定义通过swagger注解自动生成。Jersey注解使用说明:
https://jersey.java.net/documentation/latest/jaxrs-resources.html
Swagger注解使用说明:
https://github.com/swagger-api/swagger-samples/tree/master/java/java-Dropwizard
定义该服务返回值的Representation(可选)
定义一个HeatlthCheck(可选)
定义Application类
在application类里,可以绑定静态资源,注册Resource,注册swagger等。相关文章推荐
- Dropwizard: 开发轻量RESTful服务
- WCF开发入门的六个步骤
- CXF入门教程(3) -- webService客户端开发步骤详解
- Heroku:快速部署Dropwizard开发的RESTful Service
- Android入门之搭建开发环境所需资源与步骤图解
- Lex和Yacc从入门到精通(5)-开发Lex和Yacc程序的一般步骤
- mybatis简单的入门开发步骤
- Dropwizard框架搭建微服务入门学习(maven)
- springMVC入门---简单开发步骤
- WCF开发入门的六个步骤
- mybatis简单的入门开发步骤
- 嵌入式Linux基础知识3(嵌入式Linux开发入门的6个步骤 新手必看)
- Android NDK开发入门步骤详解
- 微信小程序开发初学者之入门步骤和体验
- 《ArcEngine10.X开发环境搭建及入门程序》实验步骤及代码
- struts入门----HelloWorld程序开发步骤
- Dropwizard - 开发Java RESTful Web服务
- linux内核驱动模块开发步骤及实例入门介绍
- AJAX入门3-AJAX开发步骤
- Dropwizard - 开发Java RESTful Web服务