欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot構(gòu)建ORM框架的方法步驟

 更新時(shí)間:2022年02月20日 09:24:29   作者:myli92  
本文主要介紹了SpringBoot構(gòu)建ORM框架的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

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

1.增加依賴

<dependencies>
? ? ? ? <!-- ? ? ? ?第一步:選擇ORM框架,使用springboot整合mybatis-plus依賴包-->
? ? ? ? <dependency>
? ? ? ? ? ? <groupId>com.baomidou</groupId>
? ? ? ? ? ? <artifactId>mybatis-plus-boot-starter</artifactId>
? ? ? ? ? ? <version>3.5.1</version>
? ? ? ? </dependency>
? ? ? ? <!-- ? ? ? ?第二步:選擇數(shù)據(jù)庫(kù)驅(qū)動(dòng),這里是Mysql所以就選擇Mysql的驅(qū)動(dòng),PG的就選擇PG-->
? ? ? ? <dependency>
? ? ? ? ? ? <groupId>mysql</groupId>
? ? ? ? ? ? <artifactId>mysql-connector-java</artifactId>
? ? ? ? ? ? <version>8.0.28</version>
? ? ? ? </dependency>
? ? ? ? <!-- ? ? ? ?第三步(可選):數(shù)據(jù)庫(kù)連接池,可以使用druid的連接池。springboot-jdbc已經(jīng)默認(rèn)依賴了Hikari的連接池-->
? ? ? ? <dependency>
? ? ? ? ? ? <groupId>com.alibaba</groupId>
? ? ? ? ? ? <artifactId>druid-spring-boot-starter</artifactId>
? ? ? ? ? ? <version>1.2.8</version>
? ? ? ? </dependency>
? ? </dependencies>

2.數(shù)據(jù)庫(kù)實(shí)體模型

主要使用@TableName和@TableField,配置屬性類和數(shù)據(jù)庫(kù)表的對(duì)應(yīng)關(guān)系

@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 內(nèi)部進(jìn)一步封裝了 BaseMapper 接口的方法(當(dāng)然也提供了更詳細(xì)的方法)。

public interface IUserInfoMapper extends BaseMapper<UserInfo> {
?
}

或者

public interface IUserInfoSevice extends IService<UserInfo> {
?
}

4.@Mapper或者@MapperScan

使用@Mapper或者@MapperScan,將Mapper的接口類編譯成實(shí)現(xiàn)類,才能注入。

@MapperScan:在啟動(dòng)項(xiàng)類上增加@MapperScan,指定掃描的包。指定了變成實(shí)現(xiàn)類的接口所在的包,然后包下面的所有接口在編譯之后都會(huì)生成相應(yīng)的實(shí)現(xiàn)類

@Mapper:在接口上增加@Mapper,在編譯之后會(huì)生成相應(yīng)的接口實(shí)現(xiàn)類。

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

5.配置連接

默認(rèn)數(shù)據(jù)庫(kù)配置連接

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.連接池配置
      #初始化連接池的連接數(shù)量 大小,最小,最大
      initial-size: 5
      min-idle: 5
      max-active: 20
      #配置獲取連接等待超時(shí)的時(shí)間
      max-wait: 60000
      #配置間隔多久才進(jìn)行一次檢測(cè),檢測(cè)需要關(guān)閉的空閑連接,單位是毫秒
      time-between-eviction-runs-millis: 60000
      # 配置一個(gè)連接在池中最小生存的時(shí)間,單位是毫秒
      min-evictable-idle-time-millis: 30000
      # 檢查數(shù)據(jù)庫(kù)
      validation-query: SELECT 1 FROM DUAL
      test-while-idle: true
      test-on-borrow: true
      test-on-return: false
      # 是否緩存preparedStatement,也就是PSCache  官方建議MySQL下建議關(guān)閉   個(gè)人建議如果想用SQL防火墻 建議打開(kāi)
      pool-prepared-statements: true
      max-pool-prepared-statement-per-connection-size: 20
      # 配置監(jiān)控統(tǒng)計(jì)攔截的filters,去掉后監(jiān)控界面sql無(wú)法統(tǒng)計(jì),'wall'用于防火墻
      filter:
        stat:
          merge-sql: true
          slow-sql-millis: 5000
      #3.基礎(chǔ)監(jiān)控配置
      web-stat-filter:
        enabled: true
        url-pattern: /*
        #設(shè)置不統(tǒng)計(jì)哪些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
        #設(shè)置監(jiān)控頁(yè)面的登錄名和密碼
        #監(jiān)控頁(yè)訪問(wèn):http://localhost:端口號(hào)/項(xiàng)目名稱/druid/login.html
        login-username: admin
        login-password: admin
        allow: 127.0.0.1
        #deny: 192.168.1.100

到此這篇關(guān)于SpringBoot構(gòu)建ORM框架的方法步驟的文章就介紹到這了,更多相關(guān)SpringBoot構(gòu)建ORM框架內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解讀Spring-boot的debug調(diào)試

    解讀Spring-boot的debug調(diào)試

    這篇文章主要介紹了解讀Spring-boot的debug調(diào)試,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • SpringBoot中使用JdbcTemplate訪問(wèn)Oracle數(shù)據(jù)庫(kù)的案例詳解

    SpringBoot中使用JdbcTemplate訪問(wèn)Oracle數(shù)據(jù)庫(kù)的案例詳解

    JdbcTemplate是Spring框架中的一個(gè)核心類,用于簡(jiǎn)化Java應(yīng)用程序與關(guān)系型數(shù)據(jù)庫(kù)的交互操作,本文給大家介紹SpringBoot中使用JdbcTemplate訪問(wèn)Oracle數(shù)據(jù)庫(kù)的方法,感興趣的朋友跟隨小編一起看看吧
    2023-10-10
  • 基于Java實(shí)現(xiàn)的圖的廣度優(yōu)先遍歷算法

    基于Java實(shí)現(xiàn)的圖的廣度優(yōu)先遍歷算法

    這篇文章主要介紹了基于Java實(shí)現(xiàn)的圖的廣度優(yōu)先遍歷算法,需要的朋友可以參考下
    2014-07-07
  • 詳解Spring Boot實(shí)戰(zhàn)之單元測(cè)試

    詳解Spring Boot實(shí)戰(zhàn)之單元測(cè)試

    本篇文章主要介紹了詳解Spring Boot實(shí)戰(zhàn)之單元測(cè)試,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • 修改Android應(yīng)用的樣式的一些關(guān)鍵點(diǎn)解析

    修改Android應(yīng)用的樣式的一些關(guān)鍵點(diǎn)解析

    這篇文章主要介紹了修改Android應(yīng)用的樣式的一些關(guān)鍵點(diǎn),即對(duì)影響外觀的theme跟style的相關(guān)修改,需要的朋友可以參考下
    2015-12-12
  • Java中使用開(kāi)源庫(kù)JSoup解析HTML文件實(shí)例

    Java中使用開(kāi)源庫(kù)JSoup解析HTML文件實(shí)例

    這篇文章主要介紹了Java中使用開(kāi)源庫(kù)JSoup解析HTML文件實(shí)例,Jsoup是一個(gè)開(kāi)源的Java庫(kù),它可以用于處理實(shí)際應(yīng)用中的HTML,比如常見(jiàn)的HTML格式化就可以用它來(lái)實(shí)現(xiàn),需要的朋友可以參考下
    2014-09-09
  • springboot下添加全局異常處理和自定義異常處理的過(guò)程解析

    springboot下添加全局異常處理和自定義異常處理的過(guò)程解析

    在spring項(xiàng)目中,優(yōu)雅處理異常,好處是可以將系統(tǒng)產(chǎn)生的全部異常統(tǒng)一捕獲處理,自定義的異常也由全局異常來(lái)捕獲,如果涉及到validator參數(shù)校驗(yàn)器使用全局異常捕獲也是較為方便,這篇文章主要介紹了springboot下添加全局異常處理和自定義異常處理,需要的朋友可以參考下
    2023-12-12
  • 以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化

    以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化

    本文以小項(xiàng)目學(xué)院管理系統(tǒng)為例,給大家分享以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化的相關(guān)知識(shí),包括添加元件操作步驟及使用用戶參數(shù)組件實(shí)現(xiàn)參數(shù)化的方法,感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • SpringBoot中Redis的緩存更新策略詳解

    SpringBoot中Redis的緩存更新策略詳解

    這篇文章主要介紹了SpringBoot中Redis的緩存更新策略,緩存一般是為了應(yīng)對(duì)高并發(fā)場(chǎng)景、緩解數(shù)據(jù)庫(kù)讀寫(xiě)壓力,而將數(shù)據(jù)存儲(chǔ)在讀寫(xiě)更快的某種存儲(chǔ)介質(zhì)中(如內(nèi)存),以加快讀取數(shù)據(jù)的速度,需要的朋友可以參考下
    2023-08-08
  • 詳解全局事務(wù)注解@GlobalTransactional的識(shí)別

    詳解全局事務(wù)注解@GlobalTransactional的識(shí)別

    這篇文章主要為大家介紹了詳解全局事務(wù)注解@GlobalTransactional的識(shí)別源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12

最新評(píng)論