Spring Boot 連接數(shù)據(jù)庫(kù)(五)

簡(jiǎn)介

本篇我們將學(xué)習(xí)如何在項(xiàng)目中連接數(shù)據(jù)庫(kù)。
在一個(gè)成熟的項(xiàng)目是離不開數(shù)據(jù)庫(kù)的,數(shù)據(jù)庫(kù)很好的為我們的項(xiàng)目管理數(shù)據(jù),讓我們的開發(fā)變得簡(jiǎn)單,我們只需關(guān)注數(shù)據(jù)操作,而無(wú)需關(guān)注更多的數(shù)據(jù)庫(kù)是如何操作的。
那么Spring Boot開發(fā)的項(xiàng)目是如何連接數(shù)據(jù)庫(kù)呢?大家還記得在Spring Boot 配置文件設(shè)置(三)配置的時(shí)候說(shuō)到數(shù)據(jù)庫(kù)的連接。是的沒錯(cuò)上面的例子完完全全都可以進(jìn)行數(shù)據(jù)的連接。本篇是以連接MySQL為例,進(jìn)行連接數(shù)據(jù)操作。

Spring Boot.png

安裝

在開發(fā)之前,我們一定要選擇合適的數(shù)據(jù)庫(kù),例如:MySQLOracle、SQL Server、SQLite、MongoDB等數(shù)據(jù)庫(kù),本篇將對(duì)MySQL進(jìn)行操作,其他數(shù)據(jù)庫(kù)類型,請(qǐng)查看文檔,后期可能增加。

  1. 下載MySQL進(jìn)行安裝
  2. 配置MySQL環(huán)境變量
  3. 打開CMD,進(jìn)行驗(yàn)證MySQL是否安裝成功

查看版本

mysql -v

進(jìn)入MySQL

mysql -u root -p;
  • 注意: mysql剛剛安裝完成時(shí),賬戶為:root,密碼沒有,所以直接回車就行
    然后可以設(shè)置一下密碼,或者不設(shè)置也無(wú)所謂,修改密碼如下:
    用SET PASSWORD命令:
mysql -u root -p   
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');

或者用mysqladmin,如果無(wú)法設(shè)置的時(shí)候,就用管理者進(jìn)入設(shè)置

mysqladmin -u root password "newpass"

如果root已經(jīng)設(shè)置過(guò)密碼,采用如下方法:

mysqladmin -u root password oldpass "newpass"

創(chuàng)建一個(gè)數(shù)據(jù)庫(kù):

CREATE DATABASE 數(shù)據(jù)庫(kù)名;
CREATE DATABASE eirunye_springboot_notes;

查看創(chuàng)建的數(shù)據(jù)庫(kù):

SHOW DATABASES;
show database.png

連接數(shù)據(jù)庫(kù)

1.在項(xiàng)目根目錄下打開pom.xml文件添加 MySql Maven 依賴

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
                <!--jpa依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
            <version>2.0.1.RELEASE</version>
        </dependency>
               <!--MySQL配置依賴 版本看自己的需求-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.11</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
</dependencies>

2.在application.properties或者在application.yml文件進(jìn)行配置,本例以application.yml為例

  • application.yml添加一下代碼。
spring:
  datasource:
      driver-class-name: com.mysql.cj.jdbc.Driver  # MySql jdbc Driver
      # 連接數(shù)據(jù)庫(kù)
      # eirunye_springboot_notes表示的是你創(chuàng)建的數(shù)據(jù)庫(kù);
      # useSSL:是否使用SSL證書驗(yàn)證;
      # characterEncoding:編碼格式;
      # useJDBCCompliantTimezoneShift:是否使用符合JDBC的時(shí)區(qū)轉(zhuǎn)換;
      # useLegacyDatetimeCode:是否使用舊版日期時(shí)間碼;
      # serverTimezone:選擇服務(wù)器時(shí)間方式;
      url: jdbc:mysql://127.0.0.1:3306/eirunye_springboot_notes?useSSL=false&requireSSL=false&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
      username: root   #本地設(shè)置數(shù)據(jù)庫(kù)賬號(hào)
      password: 123456 #密碼
  • application.properties添加一下代碼。
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# 連接數(shù)據(jù)庫(kù)
# demo表示的是你創(chuàng)建的數(shù)據(jù)庫(kù);
# useSSL:是否使用SSL證書驗(yàn)證;
# characterEncoding:編碼格式;
# useJDBCCompliantTimezoneShift:是否使用符合JDBC的時(shí)區(qū)轉(zhuǎn)換;
# useLegacyDatetimeCode:是否使用舊版日期時(shí)間碼;
# serverTimezone:選擇服務(wù)器時(shí)間方式;
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/demo?useSSL=false&requireSSL=false&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
# 數(shù)據(jù)庫(kù)用戶名
spring.datasource.username=root
# 數(shù)據(jù)庫(kù)密碼
spring.datasource.password=123456
spring.jpa.hibernate.ddl-auto=update
# 是否啟用SQL語(yǔ)句的日志記錄
spring.jpa.show-sql=true
server.port=8081

3.測(cè)試

運(yùn)行項(xiàng)目若無(wú)報(bào)錯(cuò)則說(shuō)明配置已經(jīng)成功了,接下來(lái)就是進(jìn)行項(xiàng)目編寫了。

使用Intellij IDEA操作數(shù)據(jù)庫(kù)

如果使用的是Intellij IDEA進(jìn)行開發(fā)項(xiàng)目的話,我們也可以這么查看我們的連接,還有相關(guān)數(shù)據(jù)表等等。

如何使用Intellij IDEA連接數(shù)據(jù)庫(kù)?

1.打開Intellij IDEA的database數(shù)據(jù)庫(kù)導(dǎo)航

  • 打開方式一
open databse 1.png
  • 打開方式二
open databse 2.png

2.進(jìn)行連接

open databse 3.png
open databse 4.png

3.連接成功

database success.png
  1. 注意事項(xiàng)

如果無(wú)法連接,那說(shuō)明賬號(hào)密碼出現(xiàn)問(wèn)題,還有可能是修改了其他默認(rèn)的地方。大家請(qǐng)注意。

5.創(chuàng)建表TABLE

  • 創(chuàng)建表
創(chuàng)建表.png
  • 添加字段
添加字段.png
  • 插入數(shù)據(jù)
插入數(shù)據(jù).png

下載

本篇案例代碼下載-碼云
本篇案例代碼下載-GitHub
Spring Boot系列代碼-碼云
Spring Boot系列代碼-GitHub

總結(jié)

1.一般情況下我在配置連接數(shù)據(jù)庫(kù)的時(shí)候,推薦大家使用的是在設(shè)置文件里面配置在.yml或者是application.properties里面進(jìn)行設(shè)置。

2.接下來(lái)的博文講解如何操作數(shù)據(jù)庫(kù): JPA、MyBatis

  1. 在使用Spring Boot開發(fā)項(xiàng)目中遇到了一些坑,在后期我會(huì)不斷更新,與大家一起學(xué)習(xí)。

4.當(dāng)然了IDEA還有許多操作數(shù)據(jù)庫(kù)功能,大家就自己進(jìn)行操作測(cè)試吧。

我的博客

大家可以到我的博客http://eirunye.github.io進(jìn)行瀏覽相關(guān)文章,大家一起相互探討技術(shù)。

推薦

Spring Boot 系列

如果大家想了解更多的Spring Boot相關(guān)博文請(qǐng)進(jìn)入
我的Spring Boot系列博客棧

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

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

  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,273評(píng)論 6 342
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,568評(píng)論 19 139
  • 入門 介紹 Spring Boot Spring Boot 使您可以輕松地創(chuàng)建獨(dú)立的、生產(chǎn)級(jí)的基于 Spring ...
    Hsinwong閱讀 17,096評(píng)論 2 89
  • 張愛玲說(shuō),“喜歡一個(gè)人會(huì)卑微到塵埃里,然后開出花來(lái)?!?戈子算是把這句話貫徹到底了。 1、 戈子情竇初開那會(huì)兒就喜...
    流浪的小紅豆閱讀 647評(píng)論 10 11
  • 我是那樣 苦苦哀求著你的到來(lái) 當(dāng)這場(chǎng)大雪初融 又浸入心河的時(shí)候 那時(shí)候,你大抵不能 懂得我的沉默 恰似繁星 寂靜而...
    窨?jī)?/span>閱讀 195評(píng)論 0 1

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