MP使用自定义sql

使用自定义sql前提:MP版本>=3.0.7

使用方法一:

第一步:dao层创建自定义方法
package com.mp.first.dao;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.mp.first.entity.User;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface UserMapper extends BaseMapper<User> {

    //不需要加where,MP会自动判断需要则添加
    @Select("select * from user ${ew.customSqlSegment}")
    List<User> selectAll(@Param(Constants.WRAPPER) Wrapper<User> wrapper);

}
第二步:测试自己创建的方法
//    select * from user WHERE (name LIKE ? AND (age < ? OR email IS NOT NULL))
    @Test
    public void selectMy(){
        LambdaQueryWrapper<User> lambdaQuery = Wrappers.<User>lambdaQuery();

        lambdaQuery.likeRight(User::getName, "J")
                .and(lq->lq.lt(User::getAge,40).or().isNotNull(User::getEmail));

        List<User> userList = userMapper.selectAll(lambdaQuery);

        userList.forEach(System.out::println);
    }

使用方法二:(xml方式)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。