MyBatis-plus快速上手
看了官方文档,用SpringBoot写个快速上手demo。
先来个官方链接,国人写的,语言清晰易懂。
首先,需要在创建一个SpringBoot工程,在pom里导入一下依赖
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.5</version>
</dependency>
<!--mysql 5.x-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version>
</dependency>
<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<!--junit-->
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-launcher</artifactId>
<scope>test</scope>
</dependency>
其中junit是为了方便测试。
再处理一下数据库。
创建一个名为mybatis_plus的数据库,创建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)
);
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');
然后开始正式的代码编写
创建一个User实体类(注意要和数据库字段保持一致,不然后面插入会出错):
@NoArgsConstructor
@AllArgsConstructor
@Data
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}
创建UserMapper:
@Repository
public interface UserMapper extends BaseMapper<User> {
}
UserMapper继承于BaseMapper,泛型参数为刚刚创建的User。到这里,强大的MyBatis-Plus已经帮助我们写完了所有的基本CRUD语句,也就是说,基本的CRUD无需再手动编写了。
不过还没结束,还需要在SpringBoot启动类上加入@MapperScan("**.mapper")去扫描mapper,因为是写上手demo **代替所有包了
@MapperScan("**.mapper")
@SpringBootApplication
public class MybatisPlusApplication {
public static void main(String[] args) {
SpringApplication.run(MybatisPlusApplication.class, args);
}
}
然后再在application.proerties里加上数据库配置
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?useUnicode=true
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
最后在测试类里编写
@SpringBootTest
class MybatisPlusApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
void contextLoads() {
List<User> users = userMapper.selectList(null);
users.forEach(System.out::println);
}
}
userMapper.selectList()方法需要传一个wrapper,但我们是直接查询,所以传个null就好,
运行结果:
再写个插入方法:
@Test
void insertUser() {
User user = new User();
user.setName("NoNuanQi");
user.setAge(10068);
user.setEmail("789456123@csdn.com");
userMapper.insert(user);
}
mybatis-plus有自己的主键策略,可以不用设置id(某些需要手动设置id的情况除外),也可以不用在数据库建表是写上自增,采用相关的策略就能实现自增,这里采用默认的主键策略,也就是id会变成一串数字。
执行结果:

插入成功,至此,上手demo就写完

浙公网安备 33010602011771号