SpringBoot對比傳統開發以及自身的優缺點


 

        SpringBoot是伴隨着Spring4.0誕生的,繼承了Spring的優點,一經推出,引起了巨大的反向;目前Spring
 Boot的版本為2.1.0,需要Java7及Spring Framework4.1.5以上的支持。如果想在Java6下使用它,需要一些額外的
設置。

Spring Boot的優點:

使用Java或Groovy開發基於Spring的應用程序非常容易。

它減少了大量的開發時間並提高了生產力。

它避免了編寫大量的樣板代碼,注釋和XML配置。

Spring Boot應用程序與其Spring生態系統(如Spring JDBC,Spring ORM,Spring Data,Spring Security等)集成非常容易。

它遵循“自用默認配置”方法,以減少開發工作量。

它提供嵌入式HTTP服務器,如Tomcat,Jetty等,以開發和測試Web應用程序非常容易。

它提供CLI(命令行界面)工具從命令提示符,非常容易和快速地開發和測試Spring Boot(Java或Groovy)應用程序。

它提供了許多插件來開發和測試Spring啟動應用程序非常容易使用構建工具,如Maven和Gradle。

它提供了許多插件,以便與嵌入式和內存數據庫工作非常容易。

Spring Boot的核心功能

(1)獨立運行的Spring項目

Spring Boot可以以jar包的形式進行獨立的運行,使用:java -jar xx.jar 就可以成功的運行項目,或者在應用項目的主程序中運行main函數即可;

(2)內嵌的Servlet容器

內嵌容器,使得我們可以執行運行項目的主程序main函數,是想項目的快速運行;

主程序代碼SpringbootDemoApplication.java

  1.  
    package com.xuliugen.demo;
  2.  
     
  3.  
    import org.springframework.boot.SpringApplication;
  4.  
    import org.springframework.boot.autoconfigure.SpringBootApplication;
  5.  
     
  6.  
    @SpringBootApplication
  7.  
    public class SpringbootDemoApplication {
  8.  
     
  9.  
    public static void main(String[] args) {
  10.  
    SpringApplication.run(SpringbootDemoApplication.class, args);
  11.  
    }
  12.  
    }

(3)提供starter簡化Manen配置

Spring Boot提供了一系列的starter pom用來簡化我們的Maven依賴,下邊是創建一個web項目中自動包含的依賴,使用的starter pom以來為:spring-boot-starter-web

spring-boot-starter-web:支持全棧web開發,里面包括了Tomcat和Spring-webmvc。

spring-boot-starter-mail:提供對javax.mail的支持.

spring-boot-starter-ws: 提供對Spring Web Services的支持

spring-boot-starter-test:提供對常用測試框架的支持,包括JUnit,Hamcrest以及Mockito等。

spring-boot-starter-actuator:支持產品環境下的一些功能,比如指標度量及監控等。

spring-boot-starter-jetty:支持jetty容器。

spring-boot-starter-log4j:引入默認的log框架(logback) 

Spring Boot官網還提供了很多的starter pom,請參考:

http://docs.spring.io/spring-boot/docs/1.4.1.RELEASE/reference/htmlsingle/#using-boot-starter

這里寫圖片描述

(4)自動配置Spring

Spring Boot會根據我們項目中類路徑的jar包/類,為jar包的類進行自動配置Bean,這樣一來就大大的簡化了我們的配置。當然,這只是Spring考慮到的大多數的使用場景,在一些特殊情況,我們還需要自定義自動配置;

(5)應用監控

Spring Boot提供了基於http、ssh、telnet對運行時的項目進行監控;

SpringBoot缺點

Spring Boot作為一個微框架,離微服務的實現還是有距離的。springboot 只是為了提高開發效率,是為了提升生產力的。

沒有提供相應的服務發現和注冊的配套功能,自身的acturator所提供的監控功能,也需要與現有的監控對接。沒有配套的安全管控方案,對於REST的落地,還需要自行結合實際進行URI的規范化工作。

注意:

        將現有或傳統的Spring Framework項目轉換為Spring Boot應用程序是一個非常困難和耗時的過程。它僅適用於全新Spring項目。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM