Mybatisplus学习—Day1

本文介绍了如何在项目中引入Mybatisplus的起步依赖,定义Mapper接口,以及如何使用常见的注解如@Tablelename、@TableId等。还讲解了条件构造器、自定义SQL的使用方法,包括基于Wrapper构建复杂查询和自定义SQL语句。最后提到了Service接口在Mybatisplus中的作用。
摘要由CSDN通过智能技术生成

一、入门案例

1、引入Mybatisplus的起步依赖

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.3.1</version>
</dependency>

2、定义Mapper

public interface UserMapper extends BaseMapper<User>{

}

二、常见注解

Mybatisplus中比较常见的几个注解如下:

@Tablename:用来指定表名

@TableId:用来指定表中的主键字段信息

@TableId(type = IdType.ASSIGN_ID)

IdType枚举:
AUTO:数据库自增长
INPUT:通过set方法自行输入
ASSIGN_ID:分配ID,接口IdentifierGenerator的方法nextId来生成id,默认实现类是DefaultidentifierGenerator雪花算法

@TableField:用来指定表中的普通字段信息

使用的常见场景:成员变量名与数据库字段名不一致;成员变量以is开头,且是布尔值;成员变量名与数据库关键字冲突;成员变量不是数据库字段。

三、条件构造器

四、自定义sql

我们可以利用MyBatisPlus的Wrapper来构建复杂的Where条件,然后自己定义SQL语句中剩下的部分。

①基于Wrapper构建where条件

List<Long> ids = List.of(1L,2L,4L);
int amount = 200;
//构建条件
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<User>().in(User::getId,ids);
//2.自定义SQL方法调用
userMapper.updateBalanceByIds(wrapper,amount);

②在mapper方法参数中用Param注解声明wrapper变量名称,必须是ew

void updateBalanceByIds(@Param("ew")) LambdaQueryWrapper<User> wrapper, @Param("amount") int amount);

③自定义SQL,并使用Wrapper条件

<update id="updateBalanceByIds">
    UPDATE tb_user SET balance = balance - #{amount} ${ew.customSqlSegment}
</update>

五、Service接口

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值