一、springboot是啥?
1.什么是springboot?
1.1springboot是spring生態圈的一個輕量級框架,換句話說springboot就是spring,是spring的一個衍生版本
1.2如果是spring框架,項目中搭建完畢,無法實現任何的代碼,也就是說spring沒有辦法幫助開發人員去連接數據庫,對數據庫做增刪改查,也沒有辦法自動把shiro集成進來,需要開發人員手動編寫xml配置文件,自己進行整合
1.3springboot其實就是集成好了很多框架的spring,直接根據springboot所提供的標准化編寫配置即可,不再需要編寫xml配置文件,springboot官方給出的解釋就是干掉xml文件,使用Java代碼進行編寫配置通過Java類來代替xml
二、為什么使用?
2.為什么要用springboot來代替spring?
傻瓜式開發,減少了大量配置,降低了開發人員的標准,低層次的開發人員也可以進行編寫業務邏輯,不再需要了解內部運行原理以及框架的集成和整合
三、實際操作?
3.1 創建maven項目,在pro.xml文件中,將spring-boot-starter-parent 引入進來。
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.aaa</groupId> <artifactId>20190815-springboot</artifactId> <version>1.0-SNAPSHOT</version> <!--1.添加 將spring當做父級工程 2.此時 這個工程已經變成spring項目下的一個子工程。 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.22.RELEASE</version> </parent> <dependencies> <!-- 在springboot中會定義很多個starter,每一個starter都有自己不同的作用 web-start:引入項目所運行的基礎環境 tomcat:最終springboot會自動把tomcat集成進項目中,不再需要使用外部tomcat進行啟動 各種注解 @Controller @Service @RequestMapping @ResponseBody --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> </project> <!--<!–--> <!--其實在springboot中並沒有整合mybatis,以下的jar包依賴,是mybatis公司自己為了整合springboot所提供的,並不是springboot自帶的--> <!--所以需要從maven中下載jar包--> <!--–>--> <!--<dependency>--> <!--<groupId>org.mybatis.spring.boot</groupId>--> <!--<artifactId>mybatis-spring-boot-starter</artifactId>--> <!--<version>1.3.0</version>--> <!--</dependency>-->
3.2 創建入口類,在java源文件下,新建包,在包的根目錄下,建立ApplicationRun.
package com.aaa.zxf.springboot; /* * 1.springboot 的入口方法 * * 2.架構基本成型。 * * 3.@SpringBootApplication 注解 * 自動加載springboot 所需要的配置 * 並將ApplicationRun 類,識別為整個項目的入口類。 *注意! * 這個類,必須要放在所有業務的上一層。 * 就是說,至少需要放在springboot包下 * * 4.最終springboot 是根據SpringApplication.run 來運行的 * */ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; //自動加載springboot 入口類 @SpringBootApplication public class ApplicationRun { public static void main(String[] args) { SpringApplication.run(ApplicationRun.class,args); } }
3.3 在包中,建立controller 包,建立后台控制器
package com.aaa.zxf.springboot.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /* * 1.RestController * 把整個 Controller, 都添加@ResponeBody 注解。 * 2.Controller * 直接返回頁面,不能處理ajax請求,需要處理,還要ajax請求,還要添加 ResponseBody 注解 * */ @RestController public class TestController { @RequestMapping("/demo") public String test(){ return "檢查springboot的效果。"; } }
3.4 運行項目,在瀏覽器中輸入 localhost:8080/demo 測試是否取到了數據。
四、解析原理?
4.1 在自己的maven項目中,引入了 spring-boot-starter-parent,此時自己的工程就是Sringboot項目下的
一個子工程。
4.2 parent項目 引入了springbootdependcies ,是他的子項目。
4.3 在自己的項目中定義jar包的時候,就等同於是重寫了,父類項目中的jar包,不需要版本號。