
org.singledog.mybatis.boot.autoconfig.MybatisJpaAutoConfiguration Maven / Gradle / Ivy
The newest version!
package org.singledog.mybatis.boot.autoconfig;
import org.apache.ibatis.features.jpa.plugins.pagination.PageInterceptor;
import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import java.util.Properties;
@Configuration
@EnableTransactionManagement
@ConditionalOnClass(PageInterceptor.class)
@AutoConfigureAfter(DataSourceAutoConfiguration.class)
@AutoConfigureBefore(MybatisAutoConfiguration.class)
@EnableConfigurationProperties(PageInterceptorProperties.class)
public class MybatisJpaAutoConfiguration {
@Autowired(required = false)
private PageInterceptorProperties properties;
@Bean
public PageInterceptor pageInterceptor() {
PageInterceptor pageInterceptor = new PageInterceptor();
if (properties.getProperties() == null)
properties.setProperties(new Properties());
pageInterceptor.setProperties(properties.getProperties());
return pageInterceptor;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy