【SpringBoot學習筆記】-IDEA中使用gradle和Mybatis

王赤腳發表於2020-11-11

SpringBoot簡介(個人理解)

SpringBoot框架,我個人理解他就是一個架子,可以使我們的開發更加簡單,詳細的介紹自行查閱百度百科和官網。

開發環境

資料庫:MySQL
IDE:IntelliJ IDEA2018.3.6

起步

第一步我們要把架子搭起來,就像衣架必須得支起來才能搭衣服衣服一樣
開啟IDEA新建一個專案
在這裡插入圖片描述
選擇Spring Initializr,點選Next
在這裡插入圖片描述
進入以下介面
在這裡插入圖片描述
進入這個頁面之後,上面的一些文字資訊都可以保持預設,畢竟是初學者能不改就不改,免得出現問題不知道怎麼解決,但是略有小成或者參加工作之後,這些文字資訊就要做一些相對應的改動。
文字資訊可以暫時不改,不過紅框裡的幾個選項要注意一下,Type我們選擇Gradle Project,它預設是Maven,需要改一下,再一個就是Java版本。
點選Next,進入以下頁面
在這裡插入圖片描述
選擇我們要用到的一些依賴,圖片中紅框內的內容
點選Next,進入以下頁面
在這裡插入圖片描述
這裡是檔案的名字和儲存目錄,可以做對應的更改,點選Finish,我們就可以進入程式碼編輯了
在這裡插入圖片描述
注意:這裡的Gradle是自己手動安裝的,第一次執行的時候IDEA也會自己下載,但是下載速度非常慢,建議手動安裝
架子搭好之後我們先看一下它的基礎目錄結構
在這裡插入圖片描述
我們要著重瞭解src下的mian目錄裡面的java資料夾和resources檔案,Java資料夾主要放我們的java程式碼檔案,resources資料夾主要放我們的xml配置檔案。
我們先來看一下build.gradle檔案
在這裡插入圖片描述
在這裡插入圖片描述
紅框裡面的內容就是我們通過gradle下載匯入的依賴包。
看完這些東西之後我們就要正式開始了。

正式開始

第一步:開啟Mybatis官網
gradle只是一個工具來方便我們匯入各種jar包也就是依賴檔案,前期主要側重於Mybatis的學習,學習一個新的東西最簡單的方式就是看官網。
開啟官網,點選入門
在這裡插入圖片描述
這裡有必要說一下,右邊的安裝教程大家可以不用太在意,因為我們用的並不是Maven而是Gradle,二者在功能上沒有太大的差別,都是一個工具,只是匯入依賴的方式不一樣,不必糾結這個東西。
官網頁面下拉
在這裡插入圖片描述
看到這個程式碼塊,這個就是核心配置檔案,我們就在resources資料夾裡建立一個mybatis-config.xml檔案,然後把官網的這串程式碼複製到這個xml檔案裡

<?xml version="1.0" encoding="UTF-8" ?>
        <!DOCTYPE configuration
                PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
                "http://mybatis.org/dtd/mybatis-3-config.dtd">
        <!--configuration核心配置檔案-->
        <!--連線資料庫-->
<configuration>
<environments default="development">
    <environment id="development">
        <transactionManager type="JDBC"/>
        <dataSource type="POOLED">
            <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
            <property name="url" value="jdbc:mysql://localhost:3306/idea?serverTimezone=UTC"/>
            <property name="username" value="root"/>
            <property name="password" value="666666"/>
        </dataSource>
    </environment>
</environments>
<!--每一個mapper.xml檔案都需要在mybatis核心配置檔案裡面註冊-->
<mappers>
    <mapper resource="UserMapper.xml"/>
</mappers>

</configuration>

這裡面對應的一些東西要按照自己的進行改動,我建議自行去官網複製,這樣可以增加一下印象
這樣我們的核心配置檔案就完成了,開始下一步
對映SQL語句這個是基於xml檔案的,所以我們在resources資料夾裡建立一個UserMapper.xml檔案
在這裡插入圖片描述
裡面寫上以下程式碼

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--namespace要繫結一個對應的Dao/Mapper介面-->
<mapper namespace="com.example.demo">

    <!--查詢語句-->
    <!--id對應的namespace中的方法名,resultType是Sql語句執行的返回值-->
    <!--查詢所用使用者-->
    <select id="getUserList" resultType="com.example.demo.User">
        select * from idea.user
    </select>

</mapper>

這一串程式碼在Mybatis的官網上也有,也是複製貼上來的,當然對應位置要做相應的改動。
寫完這兩個檔案我們就可以連結資料庫並查詢對應庫裡的資料
這個資料需要展示在我們的控制檯才可以,所以我們還需要一個Java檔案,寫一段java程式碼,前面提到過java檔案要放在Java目錄下,所以我們去java目錄建立一個User.java檔案
在這裡插入圖片描述
具體程式碼

package com.example.demo;

//實體類

public class User {
    private int ID;
    private String NAME;


    public User() {
    }

    public User(int ID, String NAME) {
        this.ID = ID;
        this.NAME = NAME;
    }

    public int getID() {
        return ID;
    }

    public void setID(int ID) {
        this.ID = ID;
    }

    public String getNAME() {
        return NAME;
    }

    public void setNAME(String NAME) {
        this.NAME = NAME;
    }

    @Override
    public String toString() {
        return "User{" +
                "ID=" + ID +
                ", NAME='" + NAME + '\'' +
                '}';
    }
}

這一串程式碼官網上沒有,需要自己敲,IDEA中有快捷鍵可以快速敲出來,如果不會就複製過去,需要注意裡面的ID,NAME這些要對應資料庫裡的欄位名,大小寫都必須一樣。
在這裡插入圖片描述
寫完這個就基本完事了,當然還沒有完,我們還需要把它給執行起來
在這裡插入圖片描述
我們需要在這個檔案裡面來寫最後的程式碼,讓它執行起來,這個檔案是專案建立的時候自動生成的,按著正確的方式我們需要在test檔案裡建立測試程式碼,先進行測試,但是我不想搞這麼麻煩,畢竟是初學,步驟多了反而容易出錯,還不知道錯在那,所以我們就直接在這個檔案裡面敲程式碼。

package com.example.demo;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) throws IOException {
//        一下三行程式碼官網複製
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//       通過sqlSessionFactory獲取openSession方法
        SqlSession Session = sqlSessionFactory.openSession();
//        通過Session的selectList方法來使用UserMapper.xml中的Sql語句,getUserList對應的就是xml檔案中select標籤裡的id
        List<User> getUserList = Session.selectList("getUserList");
//        返回值是一個列表,所以要通過for迴圈,一一拿出
        for (User user : getUserList) {
            System.out.println(user);
        }


    }

}

注意看程式碼裡的註釋,有幾行程式碼是從官網複製過來的,也可以說到目前為止,執行最多的操作就是複製貼上,大部分的程式碼都是人家已經敲好的,我們直接複製過來用就好了,由此可見,對程式設計這個行業來說,學習一門新的東西,它對應的官網就或者說明文件是最好最新最全的教課書
我們點選一下執行,看看結果
在這裡插入圖片描述
在這裡插入圖片描述
成功執行

最後

最後需要注意一下,編寫程式碼時對變數命名還有分類,什麼樣的檔案放在什麼檔案裡面都是有一定說法的,不是隨便放的,就像這個專案一樣,本來還需要一些dao資料夾,pojo資料夾,utils資料夾,來放不同的程式碼檔案,把程式碼拆分開,而不是像這樣把所有程式碼都基本放在一起,但是我覺得目前不用弄這麼多,還是那句話,初學一門技術,弄得越多容易出錯,還不知道錯在哪,還不如簡單明瞭一些,起碼自己一看就可以明白,等以後小有所成後,再去研究這些。

相關文章