java大乘期(33)----java进阶(springboot基础(1)----springboot基本概念)
以下內容基于spring,maven
為啥要用(學習)springboot?
學習springboot之前你必須先對spring有足夠的了解,并且對它要有一定的體會,因為只有對spring的體會越深刻,你的springboot才會學得越爽,越有干勁兒。springboot就是是用來簡化Spring應用開發(fā)的一個框架。
spring為啥還要簡化呢?(spring的優(yōu)缺點)
spring的優(yōu)點
Spring是Java企業(yè)版(Java Enterprise Edition,JEE,也稱J2EE)的輕量級代替品。無需開發(fā)重量級的Enterprise JavaBean(EJB),Spring為企業(yè)級Java開發(fā)提供了一種相對簡單的方法,通過依賴注入和面向切面編程,用簡單的Java對象(Plain Old Java Object,POJO)實現了EJB的功能(大大的減少了代碼量)。
spring的缺點(面向“配置”的開發(fā))
雖然Spring的組件代碼是輕量級的,但它的配置卻是重量級的。一開始,Spring用XML配置,而且是很多XML配置。Spring 2.5引入了基于注解的組件掃描,這消除了大量針對應用程序自身組件的顯式XML配置。Spring 3.0引入了基于Java的配置,這是一種類型安全的可重構配置方式,可以代替XML。
所有這些配置都代表了開發(fā)時的損耗。因為在思考Spring特性配置和解決業(yè)務問題之間需要進行思維切換,所以編寫配置擠占了編寫應用程序邏輯的時間。和所有框架一樣,Spring實用,但與此同時它要求的回報也不少。
除此之外,項目的依賴管理也是一件耗時耗力的事情。在環(huán)境搭建時,需要分析要導入哪些庫的坐標,而且還需要分析導入與之有依賴關系的其他庫的坐標,一旦選錯了依賴的版本,隨之而來的不兼容問題就會嚴重阻礙項目的開發(fā)進度。
簡而言之就是spring的配置繁瑣,開發(fā)時程序員不能全身心地投入到程序邏輯的問題上。且導的庫也多且繁瑣(庫間還有依賴,搞錯了還不好找bug)
那springboot是怎么解決的呢?(springboot的特點)
- ?為基于Spring的開發(fā)提供更快的入門體驗
- ?開箱即用,沒有代碼生成,也無需XML配置。同時也可以修改默認值來滿足特定的需求
- ?提供了一些大型項目中常見的非功能性特性,如嵌入式服務器、安全、指標,健康檢測、外部配置等
- ?SpringBoot不是對Spring功能上的增強,而是提供了一種快速使用Spring的方式
那springboot還有些什么功能呢?(SpringBoot的核心功能)
起步依賴(解決導包問題)
起步依賴本質上是一個Maven項目對象模型(Project Object Model,POM),定義了對其他庫的傳遞依
 賴,這些東西加在一起即支持某項功能。
 簡單的說,起步依賴就是將具備某種功能的坐標打包到一起,并提供一些默認的功能。
自動配置(非常智能)
Spring Boot的自動配置是一個運行時(更準確地說,是應用程序啟動時)的過程,考慮了眾多因素,才決定
 Spring配置應該用哪個,不該用哪個。該過程是Spring自動完成的。
后續(xù)會對這兩個功能做詳細剖析
總結
以上是生活随笔為你收集整理的java大乘期(33)----java进阶(springboot基础(1)----springboot基本概念)的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: java渡劫期(32)----java进
- 下一篇: 简单点名小程序(伪)----androi
