MyBatis-Plus基本使用及常用注解

MyBatis-Plus是MyBatis的扩展,提供BaseMapper实现基本的CRUD操作。通过@MapperScan注解扫描Mapper接口,配合BaseMapper和条件构造器实现查询。IService和ServiceImpl简化服务层开发,@TableName和@TableId用于表名和主键映射,@TableField处理字段命名差异,支持逻辑删除功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

官方文档

https://baomidou.com/

入门使用

依赖

 <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>
        </dependency>

        <!--mybatis-plus启动器-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.1</version>
        </dependency>
        <!--用于简化实体类开发-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <!--mysql驱动-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency
MyBatis是一个流行的对象关系映射框架,而MyBatis-Plus是在MyBatis的基础上封装了一些常用的增删改查操作,简化了开发过程。这里列出一些MyBatisMyBatis-Plus中的常用注解: 1. **@Table**: 这个注解用于标注数据库表,通常用于实体类上,它定义了表名、主键等信息。 ```java @Table(name = "users") public class User { //... ``` 2. **@Id**: 标记字段为主键,用于数据库中的唯一标识。如果是生成策略如雪花算法,可以使用@TableId注解。 3. **@Mapper**: 在MyBatis中,这个注解表明该类是一个Mapper接口,包含了SQL查询方法。 4. **@Select**, **@Insert**, **@Update**, **@Delete**: 这些都是基础的SQL操作注解,分别对应于SELECT、INSERT、UPDATE和DELETE语句。 5. **@Param**: 在方法参数前使用,指定SQL参数的位置。 6. **@ResultType**: 或者**@Results**: 注明返回结果的类型或结构。 7. **@Cache**: 可以设置缓存策略,比如读取缓存、只读缓存等。 8. **@Query**: MyBatis-Plus特有的注解,用于自定义动态SQL查询。 9. **@TableName**: 自动将实体类的名称转换为表名,如果不指定则默认使用驼峰命名。 10. **@Field**: 用于映射属性到表中的字段,当属性名与数据库字段名不符时使用。 **相关问题--:** 1. MyBatis-Plus中如何通过注解轻松实现数据分页? 2. 如何在MyBatis中利用注解编写动态SQL? 3. MyBatis的缓存机制是如何工作的?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

像向日葵一样~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值