Class MybatisAutoConfiguration

java.lang.Object
org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration
All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean

@Configuration
@ConditionalOnClass({org.apache.ibatis.session.SqlSessionFactory.class,org.mybatis.spring.SqlSessionFactoryBean.class})
@ConditionalOnSingleCandidate(javax.sql.DataSource.class)
@EnableConfigurationProperties(MybatisProperties.class)
@AutoConfigureAfter({org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration.class,MybatisLanguageDriverAutoConfiguration.class})
public class MybatisAutoConfiguration
extends java.lang.Object
implements org.springframework.beans.factory.InitializingBean
Auto-Configuration for Mybatis. Contributes a SqlSessionFactory and a SqlSessionTemplate. If MapperScan is used, or a configuration file is specified as a property, those will be considered, otherwise this auto-configuration will attempt to register mappers based on the interface definitions in or under the root auto-configuration package.
Author:
Eddú Meléndez, Josh Long, Kazuki Shimizu, Eduardo Macarrón
  • Nested Class Summary

    Nested Classes
    Modifier and Type Class Description
    static class  MybatisAutoConfiguration.AutoConfiguredMapperScannerRegistrar
    This will just scan the same base package as Spring Boot does.
    static class  MybatisAutoConfiguration.MapperScannerRegistrarNotFoundConfiguration
    If mapper registering configuration or mapper scanning configuration not present, this configuration allow to scan mappers based on the same component-scanning path as Spring Boot itself.
  • Constructor Summary

    Constructors
    Constructor Description
    MybatisAutoConfiguration​(MybatisProperties properties, org.springframework.beans.factory.ObjectProvider<org.apache.ibatis.plugin.Interceptor[]> interceptorsProvider, org.springframework.beans.factory.ObjectProvider<org.apache.ibatis.type.TypeHandler[]> typeHandlersProvider, org.springframework.beans.factory.ObjectProvider<org.apache.ibatis.scripting.LanguageDriver[]> languageDriversProvider, org.springframework.core.io.ResourceLoader resourceLoader, org.springframework.beans.factory.ObjectProvider<org.apache.ibatis.mapping.DatabaseIdProvider> databaseIdProvider, org.springframework.beans.factory.ObjectProvider<java.util.List<ConfigurationCustomizer>> configurationCustomizersProvider, org.springframework.beans.factory.ObjectProvider<java.util.List<SqlSessionFactoryBeanCustomizer>> sqlSessionFactoryBeanCustomizers)  
  • Method Summary

    Modifier and Type Method Description
    void afterPropertiesSet()  
    org.apache.ibatis.session.SqlSessionFactory sqlSessionFactory​(javax.sql.DataSource dataSource)  
    org.mybatis.spring.SqlSessionTemplate sqlSessionTemplate​(org.apache.ibatis.session.SqlSessionFactory sqlSessionFactory)  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • MybatisAutoConfiguration

      public MybatisAutoConfiguration​(MybatisProperties properties, org.springframework.beans.factory.ObjectProvider<org.apache.ibatis.plugin.Interceptor[]> interceptorsProvider, org.springframework.beans.factory.ObjectProvider<org.apache.ibatis.type.TypeHandler[]> typeHandlersProvider, org.springframework.beans.factory.ObjectProvider<org.apache.ibatis.scripting.LanguageDriver[]> languageDriversProvider, org.springframework.core.io.ResourceLoader resourceLoader, org.springframework.beans.factory.ObjectProvider<org.apache.ibatis.mapping.DatabaseIdProvider> databaseIdProvider, org.springframework.beans.factory.ObjectProvider<java.util.List<ConfigurationCustomizer>> configurationCustomizersProvider, org.springframework.beans.factory.ObjectProvider<java.util.List<SqlSessionFactoryBeanCustomizer>> sqlSessionFactoryBeanCustomizers)
  • Method Details

    • afterPropertiesSet

      public void afterPropertiesSet()
      Specified by:
      afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
    • sqlSessionFactory

      @Bean @ConditionalOnMissingBean public org.apache.ibatis.session.SqlSessionFactory sqlSessionFactory​(javax.sql.DataSource dataSource) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • sqlSessionTemplate

      @Bean @ConditionalOnMissingBean public org.mybatis.spring.SqlSessionTemplate sqlSessionTemplate​(org.apache.ibatis.session.SqlSessionFactory sqlSessionFactory)