日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Dropwizard入门及开发步骤

發布時間:2024/6/30 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Dropwizard入门及开发步骤 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 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等。

    轉載于:https://www.cnblogs.com/lknny/p/7489573.html

    總結

    以上是生活随笔為你收集整理的Dropwizard入门及开发步骤的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。