Mybatis-Plus 分页和乐观锁
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.OptimisticLockerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
/**
-
MyBatisPlus 乐观锁和分页插件配置
*/
@MapperScan("com.xxx.mapper") // 启动类上的扫描 mapper 可以放到这里
@EnableTransactionManagement
@Configuration
public class MyBatisPlusConfig {// 注册乐观锁插件(旧版:3.0.5)
/*
@Bean
public OptimisticLockerInterceptor optimisticLockerInterceptor(){
return new OptimisticLockerInterceptor();
}
*/// 注册乐观锁和分页插件(新版:3.4.0)
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor(){
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor()); // 乐观锁插件
// DbType:数据库类型(根据类型获取应使用的分页方言)
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); // 分页插件
return interceptor;
}//注册分页插件(旧版:3.0.5)
/*- 启用的原因是因为jdk1.8 Date 日期类线程不安全,使用了LocalDate
@Bean
public PaginationInterceptor paginationInterceptor(){
return new PaginationInterceptor();
}
*/
- 启用的原因是因为jdk1.8 Date 日期类线程不安全,使用了LocalDate
}