Spring Boot(一)

Spring Boot入門

1簡介

&emsp Spring Boot是由Pivotal團隊提供的全新框架,其設(shè)計目的是用來簡化新Spring應(yīng)用的初始搭建以及開發(fā)過程。該框架使用了特定的方式來進行配置,從而使開發(fā)人員不再需要定義樣板化的配置。用我的話來理解,就是spring boot其實不是什么新的框架,它默認(rèn)配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架。Spring Boot目的是為了讓程序員節(jié)省在配置上花費的時間,更加注重業(yè)務(wù)邏輯的處理。

2入門小Demo

&emsp 使用軟件:IDEA 2018

2.1使用IDEA創(chuàng)建一個空的maven項目,在pom文件下添加如下依賴:

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>

</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

</dependencies>
到此,入門小Demo就完成了配置

2.2在Java文件夾下新建一個BootDemoApplication.java 代碼內(nèi)容如下:

package com.mark;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class BootDemoApplication {
    public static void main(String[] args){
        SpringApplication.run(BootDemoApplication.class,args);
    }
}

至此,Spring Boot就完成了

3 檢驗項目能否成功運行

創(chuàng)建一個HelloController.java 代碼內(nèi)容如下:

package com.mark.web;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {
    @GetMapping("hello")
    @ResponseBody
    public String hello(){
    return "hello spring boot !";
    }
}

點擊下圖所示按鈕:

Snip20190117_8.png

出現(xiàn)如下圖:

Snip20190117_9.png

表示成功運行。

打開網(wǎng)頁輸入localhost:8080/hello查看效果

Snip20190117_7.png

入門小Demo就完成了。

由于我們在pom文件中引入了Spring Boot的相關(guān)依賴,所以查看我們的依賴文件如下

20190103144207991.png

如此相比于Spring來說,Spring Boot有著更大的優(yōu)勢。

4 使用Spring Boot連接數(shù)據(jù)庫

4.1 pom文件添加依賴

<dependencies>
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>1.1.9</version>
    </dependency>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.16.6</version>
    </dependency>
</dependencies>

4.2 編寫配置文件,如圖

Snip20190117_6.png

4.3 編寫配置類,代碼如下:

package com.mark.config;

import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;

@EnableConfigurationProperties(JdbcProperties.class)
@Configuration
public class JdbcConfig {
    @Bean
    public DataSource dataSource(JdbcProperties prop){
        DruidDataSource dataSource = new DruidDataSource();                     dataSource.setDriverClassName(prop.getDriverClassName());
        dataSource.setUrl(prop.getUrl());
        dataSource.setUsername(prop.getUsername());
        dataSource.setPassword(prop.getPassword());
        return dataSource;
    }
}

4.4配置屬性注入方式一:

package com.mark.config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
@ConfigurationProperties(prefix = "jdbc")
@Data
public class JdbcProperties {
    String url;
    String driverClassName;
    String username;
    String password;
}

4.5配置屬性注入方式二:

package com.mark.config;
import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
@Configuration
public class JdbcProperties2 {
    @Bean
    @ConfigurationProperties(prefix = "jdbc")
    public DataSource dataSource(){
        return new DruidDataSource();
    }
}

4.6 效果演示:

觀察Debug后控制臺截圖如下:

Snip20190117_5.png

說明配置文件中相關(guān)屬性已經(jīng)成功注入Bean中。

配置屬性兩種注入方式,第一種適合于該屬性可能很多情況下可能用到,而第二種注入方式,比較簡潔,比較適合于類似于鏈接數(shù)據(jù)庫這種操作,只需要一次,其他情況不太可能用得到

5配置Run Dashboard

首先,打開項目工程找到,workspace.xml


Snip20190117_10.png

打開,搜索Rundashboard,找到下面這段:

Snip20190117_11.png

然后再Component中添加下面的內(nèi)容:

<option name="configurationTypes">  
    <set>  
        <option value="SpringBootApplicationConfigurationType" />  
    </set>  
</option> 

效果演示:


Snip20190117_12.png

這樣,當(dāng)我們想啟動某一個微服務(wù)的時候,就不必要去找相對應(yīng)的啟動類,直接在這里面就可以啟動了

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容