package com.ruoyi.framework.config;
|
|
import com.baomidou.mybatisplus.annotation.DbType;
|
import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
|
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
|
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
|
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
import jakarta.annotation.PostConstruct;
|
import org.mybatis.spring.annotation.MapperScan;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Configuration;
|
|
import java.text.SimpleDateFormat;
|
import java.util.Collections;
|
|
|
@Configuration
|
@MapperScan("com.ruoyi.**.mapper")
|
public class MybatisPlusConfig {
|
@Bean
|
public PaginationInnerInterceptor paginationInnerInterceptor() {
|
PaginationInnerInterceptor paginationInterceptor = new PaginationInnerInterceptor();
|
// 设置最大单页限制数量,默认 500 条,-1 不受限制
|
paginationInterceptor.setMaxLimit(-1L);
|
paginationInterceptor.setDbType(DbType.DM);
|
// 开启 count 的 join 优化,只针对部分 left join
|
paginationInterceptor.setOptimizeJoin(true);
|
return paginationInterceptor;
|
}
|
@Bean
|
public MybatisPlusInterceptor mybatisPlusInterceptor(){
|
MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
|
mybatisPlusInterceptor.setInterceptors(Collections.singletonList(paginationInnerInterceptor()));
|
return mybatisPlusInterceptor;
|
}
|
|
|
}
|