多表查询和分页查询
多表
实现复杂关系映射,可以使用@Results注解,@Result注解,@One注解,@Many注解组合完成复杂关系的配置。
(MybatisPLus对多表无变化,以上为Mybatis的注解。)
测试
@Select("select * from t_user")
@Results(
{
@Result(column = "id", property = "id"),
@Result(column = "name",property = "name"),
@Result(column = "password",property = "password"),
@Result(column = "id",property = "message",javaType = List.class,
many = @Many(select="top.rczmm.springboot1.Mapper.MessageMapper.selectById"))
}
)
List<User> selectAllUsersMessage();
分页
编写配置文件
package top.rczmm.springboot1.configuration;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MybatisPlusConfig {
@Bean
public MybatisPlusInterceptor paginationInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor(DbType.MYSQL);
interceptor.addInnerInterceptor(paginationInnerInterceptor);
return interceptor;
}
}
测试
@GetMapping("findAll")
public IPage findAll() {
Page<User> page = new Page<>(0,2);
return userMapper.SelectPage(page);
}