1. 程式人生 > 其它 >springBoot整合mybatisPlus從零搭建專案--基礎整合版

springBoot整合mybatisPlus從零搭建專案--基礎整合版

springBoot整合Mybatis和spring data jdbc 初級版。簡單搭個專案。

環境是Jdk8

第一步建立專案:開啟idea>file>project>SpringInitializr

 第二步 選擇需要載入的開發工具類:這裡選擇預設的springboot版本即可,選擇完成後點選 create即可

 第三步:專案建立完成之後,進入file>setting裡面搜尋maven並更改預設的maven配置,使用我們自己的maven配置。

 在設定完maven後如果側邊沒有出現maven工具欄重啟一下就好,如果maven載入不成功則根據提示資訊再次重複上一步即可。

 當maven載入完成後執行即可(此時沒有設定資料庫連線,執行後控制檯會提醒沒有資料來源)

 在這時候一個簡單的springBoot專案已經搭建完畢,但是沒有配置資料來源,下面進入application.yml的簡單配置:首先將application.propertites改為application.yml 並複製一份改名為application-dev.yml(application-dev開發環境  application-test 測試環境  application-pro 生產環境)

 在application裡面配置active為dev,代表我們目前使用的是dev的配置檔案

 在application-dev.yml裡面配置:

variable:
  profiles: dev

#資料來源
spring:
  datasource:
    username: 資料庫使用者名稱
    password: 資料庫使用者密碼
    url: jdbc:mysql://資料庫地址:3306/app_version?useSSL=false&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&serverTimezone=GMT%2B8&allowMultiQueries=true
driver-class-name: com.mysql.cj.jdbc.Driver server: tomcat: uri-encoding: utf-8 #設定埠 port: 8080 servlet: #設定訪問路徑字首 context-path: /car318 ##Mybatis Plus 配置 mybatis-plus: #配置mapper.xml,實體類,列舉類 的掃描路徑 mapper-locations: classpath*:/mapper/**/*Mapper.xml type-aliases-package: com.car318.appversion.**.entity type-enums-package: com.car318.appversion.**.enums global-config: db-config: id-type: auto table-underline: false configuration: map-underscore-to-camel-case: false cache-enabled: false # 預設不展示展示日誌 # log-impl: org.apache.ibatis.logging.nologging.NoLoggingImpl # 展示日誌 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #解決mybatis查詢時資料返回值為null時不會反射的問題---目前設定了也沒用 call-setters-on-nulls: true

做完application-dev配置後複製改名為application-test和application-pro將裡面的profiles值改為對應的值,資料庫修改地址,即可實現在application裡面進行配置檔案的切換。

最後,因為部分驅動尚未匯入,需要在pom檔案中匯入jar包即可:

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.6.7</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.car318</groupId>
    <artifactId>appVersion</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>appVersion</name>
    <description>appVersion</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.restdocs</groupId>
            <artifactId>spring-restdocs-mockmvc</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- 資料庫驅動-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <!-- mybatis-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.3.2</version>
        </dependency>
        <!-- 引入log4j -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <!-- 熱啟動 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
        <!-- 測試-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13</version>
            <scope>test</scope>
        </dependency>
        <!--        aspectjrt引入-->
        <!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>1.9.5</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.aspectj/aspectjrt -->
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>1.9.5</version>
        </dependency>
        <!-- json引入-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.75</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.asciidoctor</groupId>
                <artifactId>asciidoctor-maven-plugin</artifactId>
                <version>1.5.8</version>
                <executions>
                    <execution>
                        <id>generate-docs</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>process-asciidoc</goal>
                        </goals>
                        <configuration>
                            <backend>html</backend>
                            <doctype>book</doctype>
                        </configuration>
                    </execution>
                </executions>
                <dependencies>
                    <dependency>
                        <groupId>org.springframework.restdocs</groupId>
                        <artifactId>spring-restdocs-asciidoctor</artifactId>
                        <version>${spring-restdocs.version}</version>
                    </dependency>
                </dependencies>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.5.0</version>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>