クイックスタート
このシンプルなデモを通じて、MyBatis-Plusの強力な機能について説明します。その前に、以下の前提条件を満たしていることを想定しています:
- Java開発環境および対応するIDEを所有している
- Spring Bootに精通している
- MavenまたはGradleに精通している
ここにUserテーブルがあり、その構造は以下の通りです:
id | name | age | |
---|---|---|---|
1 | Jone | 18 | test1@baomidou.com |
2 | Jack | 20 | test2@baomidou.com |
3 | Tom | 28 | test3@baomidou.com |
4 | Sandy | 21 | test4@baomidou.com |
5 | Billie | 24 | test5@baomidou.com |
対応するデータベースSchemaスクリプトは以下の通りです:
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user`( id BIGINT NOT NULL COMMENT '主キーID', name VARCHAR(30) NULL DEFAULT NULL COMMENT '名前', age INT NULL DEFAULT NULL COMMENT '年齢', email VARCHAR(50) NULL DEFAULT NULL COMMENT 'メールアドレス', PRIMARY KEY (id));
対応するデータベースDataスクリプトは以下の通りです:
DELETE FROM `user`;
INSERT INTO `user` (id, name, age, email) VALUES(1, 'Jone', 18, 'test1@baomidou.com'),(2, 'Jack', 20, 'test2@baomidou.com'),(3, 'Tom', 28, 'test3@baomidou.com'),(4, 'Sandy', 21, 'test4@baomidou.com'),(5, 'Billie', 24, 'test5@baomidou.com');
プロジェクトの初期化
空のSpring Bootプロジェクトを作成し、H2データベースを統合テスト用に追加します。
依存関係の追加
MyBatis-Plus Starterの依存関係を導入します
Spring Boot2
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.14</version></dependency>
implementation 'com.baomidou:mybatis-plus-boot-starter:3.5.14'
Spring Boot3
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-spring-boot3-starter</artifactId> <version>3.5.14</version></dependency>
implementation 'com.baomidou:mybatis-plus-spring-boot3-starter:3.5.14'
Spring Boot4 (3.5.13以降)
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-spring-boot4-starter</artifactId> <version>3.5.14</version></dependency>
implementation 'com.baomidou:mybatis-plus-spring-boot4-starter:3.5.14'
設定
application.yml
設定ファイルにH2データベースの関連設定を追加します:
# データソース設定spring: datasource: driver-class-name: org.h2.Driver username: root password: test sql: init: schema-locations: classpath:db/schema-h2.sql data-locations: classpath:db/data-h2.sql
上記の設定は、どのSpring Bootプロジェクトでも設定するデータベース接続情報です。MySQLなどの他のデータベースを使用している場合は、対応する設定情報を変更する必要があります。
Spring Boot起動クラスに @MapperScan
アノテーションを追加し、Mapperフォルダをスキャンします:
@SpringBootApplication@MapperScan("com.baomidou.mybatisplus.samples.quickstart.mapper")public class Application {
public static void main(String[] args) { SpringApplication.run(Application.class, args); }
}
コーディング
エンティティクラス User.java
を作成します:
@Data@TableName("`user`")public class User { private Long id; private String name; private Integer age; private String email;}
Mapperインターフェースクラス UserMapper.java
を作成します:
public interface UserMapper extends BaseMapper<User> {
}
使用方法
テストクラスを追加して、機能テストを実行します:
@SpringBootTestpublic class SampleTest {
@Autowired private UserMapper userMapper;
@Test public void testSelect() { System.out.println(("----- selectAll method test ------")); List<User> userList = userMapper.selectList(null); Assert.isTrue(5 == userList.size(), ""); userList.forEach(System.out::println); }
}
コンソール出力:
User(id=1, name=Jone, age=18, email=test1@baomidou.com)User(id=2, name=Jack, age=20, email=test2@baomidou.com)User(id=3, name=Tom, age=28, email=test3@baomidou.com)User(id=4, name=Sandy, age=21, email=test4@baomidou.com)User(id=5, name=Billie, age=24, email=test5@baomidou.com)
まとめ
以上のいくつかの簡単な手順を通じて、UserテーブルのCRUD機能を実装しました。XMLファイルを記述する必要さえありません!
以上の手順から、MyBatis-Plusの統合が非常に簡単であることがわかります。starter依存関係を導入し、簡単に設定するだけで使用できます。
しかし、MyBatis-Plusの強力な機能はこれだけにとどまりません。MyBatis-Plusの強力な機能について詳しく知りたいですか?それでは、引き続き下記をご覧ください!