博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis-plus(1)---入门示例
阅读量:4087 次
发布时间:2019-05-25

本文共 4435 字,大约阅读时间需要 14 分钟。

官网:

参考教程:

1、什么是mybatis-plus?

MyBatis-Plus(简称MP),它是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。

1)、只做增强,不做改变

引入它不会对现有的工程产生影响

2)、效率至上

只需简单的配置,即可快速进行CRUD操作,从而节省了大量的时间。

3)、丰富功能

热加载、代码生成、分页、性能分析等功能一应俱全。

 

2、入门示例

第1步、数据库准备工作

1)、创建数据库 mybatis_plus

2)、创建user表,其对应的数据库Schema脚本如下:

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)   );

3)、向user表插入数据的脚本,如下:

insert into user(id,name,age,email) values    (1,'zhangSan',21,'zhangSan@qq.com'),    (2,'lisi',18,'liSi@qq.com'),    (3,'Tom',22,'tom@163.com'),    (4,'Lucy',23,'lucy@163.com');

 

第2步、idea配置准备

2)、设置java编译器

3)、设置项目和文件的编码

3)、配置maven

第3步、创建项目

1)、初始化工程

 

2)、在pom.xml中引入依赖

引入mybatis-plus之后,就无需再引用mybatis,避免因版本差异出现问题

org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
test
org.junit.vintage
junit-vintage-engine
com.baomidou
mybatis-plus-boot-starter
3.3.1
mysql
mysql-connector-java
runtime
org.projectlombok
lombok
true

第4步、在idea中安装lombok插件(lombok主要用来简化实体类)

第5步、编写代码

1)、配置

在application.properties配置文件中添加mysql数据库配置

springboot2.0(内置jdbc5驱动)

#mysql数据库连接spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?characterEncoding=utf-8&useSSL=falsespring.datasource.username=rootspring.datasource.password=root

springBoot2.1及以上(内置jdbc8驱动)

#mysql数据库连接spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=GMT%2B8spring.datasource.username=rootspring.datasource.password=root

这里的url使用了?serverTimezone=GMT%2B8后缀,因为8.0版本的jdbc驱动需要添加这个后缀,否则运行测试用例报告如下错误:

java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more

这里的driver-class-name使用了com.mysql.cj.jdbc.Driver,在jdbc8中建议使用这个驱动,否则运行测试用例的时候会有WARN信息

2)、主类

在springBoot启动类中添加@MapperScan注解,扫描Mapper文件夹,如下:

package com.example.mybatis_plus1;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication@MapperScan("com.example.mapper")public class MybatisPlus1Application {	public static void main(String[] args) {		SpringApplication.run(MybatisPlus1Application.class, args);	}}

3)、实体类

创建entity包,然后在该包下新建实体类User.java,(此处使用Lombok简化代码)

package com.example.entity;import lombok.Data;@Datapublic class User {    private Long id;       //用户id    private String name;   //用户名    private Integer age;   //年龄    private String email;  //邮箱}

查看编译结果,如下:

 

4)、创建mapper包,然后在该包下新建Mapper接口:UserMapper.java

package com.example.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;import com.example.entity.User;import org.springframework.stereotype.Repository;@Repositorypublic interface UserMapper extends BaseMapper
{}

5)、测试,添加测试类,进行功能测试,如下:

package com.example.mybatis_plus1;import com.example.entity.User;import com.example.mapper.UserMapper;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import javax.annotation.Resource;import java.util.List;@SpringBootTestclass MybatisPlus1ApplicationTests {	@Resource	private UserMapper userMapper;	@Test	public void testSelectUser(){		/**		 * UserMapper中的selectList()方法的参数为MP内置的条件封装器Wrapper		 * 所以这里不填写就是无任何条件		 */		List
userList=userMapper.selectList(null); userList.forEach(System.out::println); }}

运行结果,如下:

在application.properties中配置mybatis日志,如下:

#mysql数据库连接spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?characterEncoding=utf-8&useSSL=falsespring.datasource.username=rootspring.datasource.password=root#mybatis日志mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

 

转载地址:http://wmuii.baihongyu.com/

你可能感兴趣的文章
编译Android4.0源码时常见错误及解决办法
查看>>
Android 源码编译make的错误处理
查看>>
启用SELinux时遇到的问题
查看>>
No devices detected. Fatal server error: no screens found
查看>>
db db2 base / instance database tablespace container
查看>>
db db2_monitorTool IBM Rational Performace Tester
查看>>
Android 解决TextView设置文本和富文本SpannableString自动换行留空白问题
查看>>
Android自定义View实现商品评价星星评分控件
查看>>
postgresql监控工具pgstatspack的安装及使用
查看>>
postgresql减少wal日志生成量的方法
查看>>
swift中单例的创建及销毁
查看>>
获取App Store中App的ipa包
查看>>
UIButton添加block点击事件
查看>>
利用runtime给类别添加属性
查看>>
本地推送
查看>>
UIImage存为本地文件与UIImage转换为NSData
查看>>
[转]打印质数的各种算法
查看>>
[转]javascript with延伸的作用域是只读的吗?
查看>>
php的autoload与global
查看>>
IE不支持option的display:none属性
查看>>