Dropwizard與Spring Boot比較
在這篇文章中我們將討論的Java輕量級框架Dropwizard和Spring Boot的相似性和差異。
首先,這是一個選擇自由和速度需要,無論你在Dropwizard和Spring Boot選擇哪個,這兩個框架自身都顯得有點固執己見,他們都堅信約定優於配置,那麼是如何固執呢?你會發現,在我們進行比較以後,它們每個都混入了第三方庫包,大部分並不是核心功能需要而是出於集成需要。這種犧牲的好處是獲得好的性能。下面圖中使用白色顯示依賴包。
打開今日頭條,查看更多圖片
Spring的依賴
Spring Boot聚焦於Spring應用,如果你希望進入Spring生態環境,或者已經熟悉它,希望有一個快速起步,那麼選擇它是好的選擇,而DropWizard是將其REST和Jersey結合在一起,它幫助你離開對Spring的依賴。
Http伺服器
這裡我們看到Spring Boot更加靈活,Dropwizard以約定優於配置,比Spring Boot更極端點,完全是基於Jetty,而Spring Boot默認使用嵌入的Tomcat,其他也可以選擇。
日誌
Dropwizard 從log4j切換到LogBack,而Spring boot提供 Logback, log4j 和 log4j2選擇,LogBack是一個更好的Log4j,性能要比log4j提高,不過要注意不同的方法使用性能不同。
依賴注入
兩個框架主要區別是依賴注入的不同,Spring核心有依賴注入,而DropWizard需要你選擇,這也帶來了靈活性,有Google Guice或更新更好的依賴注入框架可供選擇。
測試
兩個框架都有 dropwizard-testing 和 spring-boot-starter-test,支持。
Dropwizard metrics能讓你將它加入任何項目,甚至和Spring Boot的 metrics使用在一起,保證你的代碼的生產性。
最後,兩者都有很強很大的社區支持。如果你更喜歡輕量,無疑Dropwizard勝出,如果你已經有Spring經驗,無疑使用Spring Boot。
※發現JDK的3個bug
※後台返回json數據和前台解析json數據
TAG:程序員小新人學習 |