爲什麼使用Spring Boot?
SpringBoots 是現在比較流行的微服務框架,有時間最好學習一下SpringBoot,當然 ssm也有挺多企業在用,SpringBoot雖然入門簡單,但是一旦出現bug,排查起來比較困難,在學習SpringBoot之前先學習ssm框架,框架的演進是不斷的封裝和改進,要從基礎框架學起。
爲什麼我們要用 Spring Boot,Spring Boot 在之前的框架又做了封裝,簡化了我們的操作難度,實現自動配置。
爲什麼說是自動配置?
Spring Boot 的開啓註解是:@SpringBootApplication
,其實它就是由下面三個註解組成的:
@Configuration //配置 Spring 自帶
@ComponentScan //組件掃描 Spring 自帶
@EnableAutoConfiguration //啓用自動配置 核心註解 動態加載配置和注入Bean 這個註解最好去看下源碼,面試時候的談資。
舉個例子,比如我在 lib 下放一個 druid 連接池的 jar 包,然後在 application.yml 文件配置 druid 相關的參數,Spring Boot 就能夠自動配置所有我們需要的東西,如果我把 jar 包拿掉或者把參數去掉,那 Spring Boot 就不會自動配置。
這樣我們就能把許多功能做成公共的自動配置的啓動器(starters),其實 druid 連接池就是這麼做的,它提供了針對 Spring Boot 的啓動器:druid-spring-boot-starter。
有了這個自動配置的啓動器,我們就能非常簡單的使用它,
先添加 jar 包依賴:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
再添加相關參數:
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=
……
如果是傳統的項目,我們要自己手動寫一大堆的配置,而且還不靈活,有了這個啓動器,我們就可以做到簡單集成。
所以,這纔是 Spring Boot 的核心,這纔是我們爲什麼使用 Spring Boot 的原因。
爲什麼使用IDEA?
優點:
- 提示功能強大,就是智能吧
- 可以在IDEA界面連接數據庫,不需要再打開其它軟件了
- 因爲是小白,想不出來了。。。。。。
缺點:
- 貴,據說學生可以申請免費使用,但筆者嫌麻煩,懶豬一個。
- 耗電腦配置,不過現在一般電腦都夠用了
之前用過eclipse的同學,在使用 IntelliJ IDEA,都會對project和module的關係比較糊塗。用簡單的一句話來概括是:
IntelliJ IDEA比eclipse高一個等級,Eclipse中的workspace升級爲 IntelliJ IDEA中一個Project,Eclipse系中的Project升級爲IntelliJ IDEA中的Module
SpringBoot環境搭建
這些步驟根據官方文檔說明即可,無需刻意記憶
引入依賴
寫啓動類
1. 新建Maven Project,選擇quickstart
2. 填寫項目相關信息
3. 建議使用自己本機上的maven
4. 在pom.xml文件中添加springboot依賴
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
5.新建一個DemoController
@EnableAutoConfiguration
@Controller
public class DemoController {
@RequestMapping("/")
@ResponseBody
public String home() {
return "hello world";
}
public static void main(String[] args) {
SpringApplication.run(DemoController.class, args);
}
}
那麼這樣就可以測試啓動了,訪問localhost:8080會響應"hello world"。
但是我們一般開發的時候會單獨建一個MainApplication來啓動項目。
@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
}
改變DemoController 裏面的代碼,取消註解@EnableAutoConfiguration,拿給MainApplication。
@Controller
public class DemoController {
@RequestMapping("/")
@ResponseBody
public String home() {
return "hello world";
}
}
運行結果一樣: