第一篇:MyBatis-Plus使用入門
25899 ワード
目次、前言 、データベースを作成し、初期化する 2.1データベースを作成する .userテーブル を作成する.、初期化プロジェクト 、追加項目依存 4.1依存性を導入する 、構成 、コード作成 6.1メインクラス 6.2エンティティ を作成する. 6.3 mapper を作成します.、テスト 、設定ログ 1、はじめに
クイックスタートの参考:http://mp.baomidou.com/guide/quick-start.html テスト項目:mybatis_プラスデータベース:mybatis_プラス
2、データベースを作成して初期化する
2.1データベースの作成
mybatisプラス
2.2 userテーブルの作成
テーブルステートメントと初期化データのスクリプトは以下の通りです.
Spring Initializrを使用してSpring BootプロジェクトGroup:comp.macco Artfact:mybatis-plusバージョン:2.2.2.1.RELEASE
4、追加項目の依存性
4.1導入依存
spring-boot-starter、spring-boot-starter-test追加:mybatis-plus-boot-starter、MySQL、lombook、プロジェクトの中でLombookを使って、多くの重複コードの書き込みを減らすことができます.例えばgetter/setter/toSteringなどの方法の編纂
5、配置
appication.propertiesプロファイルにMySQLデータベースを追加する関連構成:
6、コード作成
6.1メインクラス
Spring Bootスタートクラスに@MapperScanコメントを追加し、Mapperフォルダをスキャンします.スキャンしたパケット名は実際の状況によって修正されます.
パッケージを作成します.エンティティ類User.javaを作成します.ここではLombok簡略コードを使用します.
6.3 mapperを作成する
パッケージ作成Mapper作成Mapperインターフェース:UserMapper.java
テストクラスを追加して、機能テストを行います.
コンソール出力:User(id=1、name=Jone、age=18、email=1)[email protected])User(id=2、name=Jack、age=20、[email protected])User(id=3、name=Tom、age=28、[email protected])User(id=4、name=Sandy、age=21、[email protected])User(id=5、name=Billie、age=24、[email protected])
以上の簡単なステップを通じて、UserテーブルのCRUD機能を実現しました.XMLファイルさえ作成しなくてもいいです.
8、設定ログ
sql出力ログを確認します.
クイックスタートの参考:http://mp.baomidou.com/guide/quick-start.html テスト項目:mybatis_プラスデータベース:mybatis_プラス
2、データベースを作成して初期化する
2.1データベースの作成
mybatisプラス
2.2 userテーブルの作成
テーブルステートメントと初期化データのスクリプトは以下の通りです.
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)
)
Data :
DELETE FROM user;
INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, '[email protected]'),
(2, 'Jack', 20, '[email protected]'),
(3, 'Tom', 28, '[email protected]'),
(4, 'Sandy', 21, '[email protected]'),
(5, 'Billie', 24, '[email protected]');
3、初期化プロジェクトSpring Initializrを使用してSpring BootプロジェクトGroup:comp.macco Artfact:mybatis-plusバージョン:2.2.2.1.RELEASE
4、追加項目の依存性
4.1導入依存
spring-boot-starter、spring-boot-starter-test追加:mybatis-plus-boot-starter、MySQL、lombook、プロジェクトの中でLombookを使って、多くの重複コードの書き込みを減らすことができます.例えばgetter/setter/toSteringなどの方法の編纂
<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>
</dependency>
</dependencies>
注意:MyBatis-Plusを導入した後、MyBatisとMyBatis-Sepringを再び導入しないでください.バージョンの違いによる問題を避けるために.5、配置
appication.propertiesプロファイルにMySQLデータベースを追加する関連構成:
//mysql5
#mysql
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus
spring.datasource.username=root
spring.datasource.password=passwd
mysql8 (spring boot 2.1)
:driver url
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=passwd
ここのurlは使いましたか?serverTimezone=GMT%2 B 8サフィックスは、Spring Boot 2.1が8.0バージョンのjdbcドライバを統合しているため、このバージョンのjdbcドライバはこのサフィックスを追加する必要があります.さもなければ、運行テストの用例は以下のエラーを報告します.java.sql.SQLException:The server time zone valueйヽoo...................................................×¼_;±¼囌’is unrecognized or represents more 2、ここのdriver-class-nameはcomp.mysql.cj.jdbc.Driverを使っています.jdbc 8でこの駆動を推奨します.以前のcomp.mysql.jdbc.Driverはすでに廃棄されました.そうでなければ、テスト用例を実行する時にWARN情報があります.6、コード作成
6.1メインクラス
Spring Bootスタートクラスに@MapperScanコメントを追加し、Mapperフォルダをスキャンします.スキャンしたパケット名は実際の状況によって修正されます.
@SpringBootApplication
@MapperScan("com.macco.mybatisplus.mapper")
public class MybatisPlusApplication {
public static void main(String[] args) {
SpringApplication.run(MybatisPlusApplication.class, args);
}
}
6.2エンティティを作成するパッケージを作成します.エンティティ類User.javaを作成します.ここではLombok簡略コードを使用します.
package com.macco.mybatisplus.entity;
import lombok.Data;
@Data
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}
Lombook使用参考:https://blog.csdn.net/motui/article/details/79012846 6.3 mapperを作成する
パッケージ作成Mapper作成Mapperインターフェース:UserMapper.java
package com.macco.mybatisplus.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.macco.mybatisplus.entity.User;
public interface UserMapper extends BaseMapper<User> {
}
7、テストテストクラスを追加して、機能テストを行います.
package com.macco.mybatisplus;
import com.macco.mybatisplus.entity.User;
import com.macco.mybatisplus.mapper.UserMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class MybatisPlusApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
void contextLoads() {
System.out.println(("----- selectAll method test ------"));
//UserMapper selectList() MP Wrapper
//
List<User> users = userMapper.selectList(null);
users.stream().forEach(System.out::println);
}
}
注:IDEAはuserMapperでエラーを報告しました.注入の対象が見つからないので、クラスは動的に作成されましたが、プログラムは正確に実行できます.エラーを避けるために、dao層のインターフェースに@Repositoryコメントを追加することができます.コンソール出力:User(id=1、name=Jone、age=18、email=1)[email protected])User(id=2、name=Jack、age=20、[email protected])User(id=3、name=Tom、age=28、[email protected])User(id=4、name=Sandy、age=21、[email protected])User(id=5、name=Billie、age=24、[email protected])
以上の簡単なステップを通じて、UserテーブルのCRUD機能を実現しました.XMLファイルさえ作成しなくてもいいです.
8、設定ログ
sql出力ログを確認します.
#mybatis
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl