一、方法一:使用注解
1、自定义sql方法
1@Repository 2public interface UserInfoMapper extends BaseMapper<UserInfo> { 3 @Select("select * from user ${ew.customSqlSegment}") 4 List<UserInfo> selectAll(@Param(Constants.WRAPPER) Wrapper<UserInfo> wrapper); 5}
2、调用自定义sql方法
1/** 2 * 自定义查询 3 */ 4@Test 5public void selectByMy() { 6 LambdaQueryWrapper<UserInfo> lambda = new LambdaQueryWrapper<UserInfo>(); 7 lambda.like(UserInfo::getUsername,"娟") 8 .and(lqw->lqw.lt(UserInfo::getAge,40).or().isNotNull(UserInfo::getEmail)); 9 List<UserInfo> userInfoList = userInfoMapper.selectAll(lambda); 10 userInfoList.forEach(System.out::println); 11}
二、方法二:使用xml
11、配置路径 2mybatis-plus.mapper-locations= com.xiao.permission_system.mapper.UserInfoMapper
2、在xml文件里写sql,去掉UserInfoMapper方法里的注解
1<mapper namespace="com.xiao.permission_system.mapper.UserInfoMapper"> 2 <select id="selectAll" resultMap="com.xiao.permission_system.entity.UserInfo"> 3 select * from user ${ew.customSqlSegment} 4 </select> 5</mapper>