91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mybatis?plus是什么及怎么使用

發布時間:2022-05-27 13:57:38 來源:億速云 閱讀:286 作者:iii 欄目:開發技術

這篇文章主要介紹“mybatis plus是什么及怎么使用”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“mybatis plus是什么及怎么使用”文章能幫助大家解決問題。

一、什么是mybatis-plus

做開發,免不了對數據進行增刪改查,那么mybatis-plus我覺得很適合我這個java新手,簡單好用。
官網在這

MyBatis-Plus(簡稱 MP),是一個MyBatis的增強工具,在MyBatis的基礎上只做增強 不做改變,為簡化開發、提高效率而生。
任何能使用mybatis進行crud,并且支持標準sql的數據庫,mp都可以勝任。

二、特性

  • 無侵入: 只做增強不做改變,引入它不會對現有工程產生影響,如絲般順滑

  • 損耗小: 啟動即會自動注入基本CURD,性能基本無損耗,直接面向對象操作

  • 強大的CRUD: 內置通用Mapper、通用Service,僅僅通過少量配置即可實現單表大部分CRUD操作,更有強大的條件構造器,滿足各類使用需求

  • 支持Lambda形式調用: 通過Lambda表達式,方便的編寫各類查詢條件,無需再擔心字段寫錯

  • 支持主鍵自動生成: 支持多達4種主鍵策略(內含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解決主鍵問題

  • 支持ActiveRecord模式: 支持ActiveRecord形式調用,實體類只需繼承Model類即可進行強大的CRUD操作

  • 支持自定義全局通用操作: 支持全局通用方法注入( Write once, use anywhere )

  • 內置代碼生成器: 采用代碼或者Maven插件可快速生成Mapper 、Model 、Service 、Controller層代碼,支持模板引擎,更有超多自定義配置

  • 內置分頁插件: 基于MyBatis物理分頁,開發者無需關心具體操作,配置好插件之后,寫分頁等同于普通List查詢

  • 分頁插件支持多種數據庫: 支持 MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer 等多種數據庫

  • 內置性能分析插件: 可輸出Sql語句以及其執行時間,建議開發測試時啟用該功能,能快速揪出慢查詢

  • 內置全局攔截插件: 提供全表delete 、update操作智能分析阻斷,也可自定義攔截規則,預防誤操作

三、試一試

既然是來操作數據的,那得準備好數據的環境。

1.建庫、建表、建數據

# 創建數據庫
CREATE DATABASE mybatis_plus;
# 創建表
DROP TABLE IF EXISTS user;
CREATE TABLE user
(
	id BIGINT(20) NOT NULL COMMENT '主鍵ID',
	name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
	age INT(11) NULL DEFAULT NULL COMMENT '年齡',
	email VARCHAR(50) NULL DEFAULT NULL COMMENT '郵箱',
	PRIMARY KEY (id)
);
# 插入數據
INSERT INTO user (id, name, age, email) VALUES
(1, 'wesson1', 18, 'pingguotest1@pingguo.com'),
(2, 'wesson2', 19, 'pingguotest1@pingguo.com'),
(3, 'wesson3', 20, 'pingguotest1@pingguo.com'),
(4, 'wesson4', 22, 'pingguotest1@pingguo.com'),
(5, 'wesson5', 20, 'pingguotest1@pingguo.com');

2.idea中創建工程、配置

為了方便,可以新建一個Spring Initializr工程。

mybatis?plus是什么及怎么使用

配置pom.xml文件,可以修改下springboot的版本,我們使用穩定版的2.2.1.RELEASE

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

接著添加maven依賴。

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!--mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.0.5</version>
        </dependency>
        <!--mysql-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <!--lombok 簡化實體類-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.12</version>
        </dependency>
    </dependencies>

還有,在idea里安裝lombok插件。到settings里plugin下,搜索lombok回車,安裝即可。

mybatis?plus是什么及怎么使用

3.配置數據庫

找到application.properties文件,路徑如圖所示,

mybatis?plus是什么及怎么使用

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://XXXXXX:3306/mybatis_plus?characterEncoding=UTF-8&serverTimezone=GMT%2B8
spring.datasource.username=XXXX
spring.datasource.password=XXXXX
#mybatis日志,在控制臺可以看到操作過程日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

注意:這里使用的是mysql8,springboot2.1以上的版本,集成了8.0版本的jdbc驅動,在url里加上后綴?characterEncoding=UTF-8&serverTimezone=GMT%2B8
另外,driver-class-name也建議加上cj,com.mysql.cj.jdbc.Driver。因為之前的com.mysql.jdbc.Driver已經廢棄了,運行的時候會有warning

4.編寫準備代碼

在操作之前,還有些準備代碼需要完成:

entity包下的user.java

package com.pingguo.mpdemo.entity;
import lombok.Data;
@Data
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

這里加上@Data注解即可,不要手動的編寫set、get、tostring方法了。

mapper包下的UserMapper.java

package com.pingguo.mpdemo.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pingguo.mpdemo.entity.User;
import org.springframework.stereotype.Repository;
@Repository
public interface UserMapper extends BaseMapper<User> {
}

這是一個mapper接口,我們要繼承BaseMapper,把User實體傳進去,就可以使用crud了。

配置掃描mapper的路徑

在啟動類上,加個注解,mapper的路徑。

package com.pingguo.mpdemo;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
// 配置掃描mapper的路徑
@MapperScan("com.pingguo.mpdemo.mapper")
public class MpdemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(MpdemoApplication.class, args);
    }
}

5.編寫測試代碼

為了方便,可以直接在單元測試代碼里進行crud操作。

mybatis?plus是什么及怎么使用

查詢

因為事先我們在表里已經插入了數據,所以現在可以去把所有數據都查出來。

@SpringBootTest
class MpdemoApplicationTests {
    @Autowired
    private UserMapper userMapper;
    @Test
     void findAll() {
        List<User> users =  userMapper.selectList(null);
        System.out.println(users);
    }
}

因為我們配置了mybatis的日志,所以在控制臺可以看到整個的操作過程。

mybatis?plus是什么及怎么使用

新增、修改、刪除

//    新增
    @Test
    void addUser() {
        User user = new User();
        user.setName("pingguo");
        user.setAge(21);
        user.setEmail("pingguo@pingguo.com");
        userMapper.insert(user);
    }
//    刪除
    @Test
    void deleteUser() {
        userMapper.deleteById(1L);
    }
//    修改
    @Test
    void updateUser() {
        User user = new User();
        user.setId(2L);
        user.setName("修改名稱222");
        userMapper.updateById(user);
    }

新增、刪除、修改也很簡單,可以通過日志看下執行過程。

關于“mybatis plus是什么及怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

茂名市| 三河市| 丁青县| 星座| 常熟市| 建宁县| 余姚市| 闸北区| 曲沃县| 海兴县| 梁平县| 靖江市| 中西区| 开封市| 扎赉特旗| 澄迈县| 蒙自县| 青浦区| 樟树市| 阿合奇县| 金乡县| 宝坻区| 买车| 石河子市| 天台县| 磴口县| 志丹县| 奈曼旗| 叶城县| 类乌齐县| 合阳县| 汝城县| 吉水县| 霍城县| 仪征市| 弥渡县| 城口县| 扎兰屯市| 昌宁县| 江川县| 南康市|