1.java访问数据库
在java中访问数据库,使用jdbc。
- 1.在项目中直接使用jdbc,访问数据库。创建Connection,ResultSet。
- 2.把jdbc的操作进行了封装。创建了很多工具类,比如DBUtil。
- 3.持久化的框架
–1) hibernate:全自动的ROM框架。实现java object --表的映射。可以通过java对象的方法,操作表中的数据。开发人员可以不了解或少了解sql语言。
可以使用hibernate访问不同的数据库,不需要改变代码。通用不同的数据库。
–2)jpa规范:定义了访问数据库的各种操作。定义了一致的方法操作数据库。
jpa有各种实现:hibernate,open-jpa,link。
–3)mybatis:需要编写xml配置文件,在xml文件中编写sql语句,访问数据库。任何的操作需要使用xml文件,对开发人员要求高,需要熟悉sql语言。单表的CRUD也需要使用xml文件,编写sql语句。
–4)mybatis plus:简称MP。对mybatis的增强。在mybatis之外加入了一层,通过mybatis plus实现单表的CRUD,不使用xml文件。分页,性能统计,逻辑删除等等。
2.什么是mybatis-plus
- MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window) 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
- MyBatis-Plus在MyBatis之上套了一层外衣,单表CURD的操作几乎都可以由MyBatis-Plus代替执行。而且提供了各种查询方式,分页行为。作为使用者无需编写xml,直接调用MyBatis-Plus提供的API就可以了。
- 官网:https://mp.baomidou.com/.
3.快速开始
3.1 mysql数据库准备
- 创建一个user表。

3.2 初始化工程




3.3 添加依赖
- 指定maven的mp坐标
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.5</version>
</dependency>
- 指定数据库的驱动
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
3.4 配置
- 1.在application.yml配置文件中添加MySQL数据库的相关配置。
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/springdb?useUnicode=true&characterEncoding=utf-8
username: root
password: root
- 2.在springboot的启动类上,加入@MapperScan注解,扫描Mapper文件夹。
/**
* @MapperScan:扫描器,指定Mapper类所在的包
*/
@SpringBootApplication
@MapperScan(value = "com.putao.plus.mapper")
public class PlusApplication {
public static void main(String[] args) {
SpringApplication.run(PlusApplication.class, args);
}
}
- 3.在application.yml配置文件中配置日志
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
3.5 编码
- 1.创建实体类。
–1)定义属性
–2)指定主键的类型
//实体类
public class User {
//定义属性:属性名和表中的列名一样
/**
* 指定主键的方式
* value:主键字段的名称,如果是id,可以不用写
* type:指定主键的类型,主键的值如何生成。idType.AUTO 表示自动增长。
*/
@TableId(value = "id",type = IdType.AUTO)
private Integer id;
private String name;
private String email;
//实体类属性,推荐使用包装类型,可以判断是否为null,基本类型int会为0
private Integer age;
}
- 2.创建Dao接口。
需要继承BaseMapper<实体.class>
package com.putao.plus.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.putao.plus.entity.User;
/**
* 自定义Mapper,就是Dao接口
* 1.要实现BaseMapper
* 2.要实现实体类
*
* BaseMapper是MP框架中的对象,定义了17个操作方法(CURD)
*/
public interface UserMapper extends BaseMapper<User> {
}
3.6 开始使用
添加测试类,进行功能测试。
–1)在测试类或service注入Dao接口,框架使用动态代理Dao的实现类对象。
–2)调用BaeMapper中的方法,完成CRUD
@SuppressWarnings("all")
@RunWith(SpringRunner.class)
@SpringBootTest
class PlusApplicationTests {
//使用自动注入,注入mapper对象(Dao)
@Autowired
private UserMapper userDao;
//定义测试方法
//测试添加操作,insert
@Test
public void testUserInsert(){
//创建User对象
User user = new User();
user.setName("zhangsan"+i);
user.setAge(20 + i);
user.setEmail("zhangsan@sina.com");
//调用UserMapper的方法,也就是父接口BaseMapper中提供的方法
int rows = userDao.insert(user);
System.out.println("insert的结果:"+rows);
}
}
本文介绍了MybatisPlus的入门步骤,包括通过java访问数据库的常见方式,阐述了MybatisPlus作为Mybatis增强工具的功能,如简化CRUD操作、提供分页和性能统计等。文章详细讲解了如何从mysql数据库准备、初始化SpringBoot工程、添加依赖、配置到编码实践,最后进行功能测试,帮助读者快速上手MybatisPlus。
1461

被折叠的 条评论
为什么被折叠?



