首頁 > 軟體

SpringBoot構建ORM框架的方法步驟

2022-02-20 10:00:04

目前常用的ORM框架有 Mybatis(batis)、MybatisPlus,Hibernate、Jpa等幾個框架,今天就簡單介紹一下搭建Mybatisplus框架的流程。

1.增加依賴

<dependencies>
        <!--        第一步:選擇ORM框架,使用springboot整合mybatis-plus依賴包-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.1</version>
        </dependency>
        <!--        第二步:選擇資料庫驅動,這裡是Mysql所以就選擇Mysql的驅動,PG的就選擇PG-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.28</version>
        </dependency>
        <!--        第三步(可選):資料庫連線池,可以使用druid的連線池。springboot-jdbc已經預設依賴了Hikari的連線池-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.8</version>
        </dependency>
    </dependencies>

2.資料庫實體模型

主要使用@TableName和@TableField,設定屬性類和資料庫表的對應關係

@TableName("userinfo")
@Data
public class UserInfo {
 
    @TableId(type = IdType.AUTO)
    private Integer id;
 
    @TableField
    private String name;
 
    private String usernum;
 
    private int sex;
 
    private Date createtime;
 
    private Date updatetime;
}

3.增加Mapper

使用BaseMapper繼承或者IService繼承

BaseMapper 介面中封裝了一系列 CRUD 常用操作

IService 內部進一步封裝了 BaseMapper 介面的方法(當然也提供了更詳細的方法)。

public interface IUserInfoMapper extends BaseMapper<UserInfo> {
 
}

或者

public interface IUserInfoSevice extends IService<UserInfo> {
 
}

4.@Mapper或者@MapperScan

使用@Mapper或者@MapperScan,將Mapper的介面類編譯成實現類,才能注入。

@MapperScan:在啟動項類上增加@MapperScan,指定掃描的包。指定了變成實現類的介面所在的包,然後包下面的所有介面在編譯之後都會生成相應的實現類

@Mapper:在介面上增加@Mapper,在編譯之後會生成相應的介面實現類。

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

5.設定連線

預設資料庫設定連線

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/myboot?useUnicode=true&characterEncoding=utf8
    username: root
    password: root

durid連線池設定連線:

spring:
  datasource:
    #1.JDBC
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/myboot?useUnicode=true&characterEncoding=utf8
    username: root
    password: root
    druid:
      #2.連線池設定
      #初始化連線池的連線數量 大小,最小,最大
      initial-size: 5
      min-idle: 5
      max-active: 20
      #設定獲取連線等待超時的時間
      max-wait: 60000
      #設定間隔多久才進行一次檢測,檢測需要關閉的空閒連線,單位是毫秒
      time-between-eviction-runs-millis: 60000
      # 設定一個連線在池中最小生存的時間,單位是毫秒
      min-evictable-idle-time-millis: 30000
      # 檢查資料庫
      validation-query: SELECT 1 FROM DUAL
      test-while-idle: true
      test-on-borrow: true
      test-on-return: false
      # 是否快取preparedStatement,也就是PSCache  官方建議MySQL下建議關閉   個人建議如果想用SQL防火牆 建議開啟
      pool-prepared-statements: true
      max-pool-prepared-statement-per-connection-size: 20
      # 設定監控統計攔截的filters,去掉後監控介面sql無法統計,'wall'用於防火牆
      filter:
        stat:
          merge-sql: true
          slow-sql-millis: 5000
      #3.基礎監控設定
      web-stat-filter:
        enabled: true
        url-pattern: /*
        #設定不統計哪些URL
        exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
        session-stat-enable: true
        session-stat-max-count: 100
      stat-view-servlet:
        enabled: true
        url-pattern: /druid/*
        reset-enable: true
        #設定監控頁面的登入名和密碼
        #監控頁存取:http://localhost:埠號/專案名稱/druid/login.html
        login-username: admin
        login-password: admin
        allow: 127.0.0.1
        #deny: 192.168.1.100

到此這篇關於SpringBoot構建ORM框架的方法步驟的文章就介紹到這了,更多相關SpringBoot構建ORM框架內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com