`

mybatis与spring整合之MapperScannerConfigurer

阅读更多
//实现了BeanDefinitionRegistryPostProcessor和InitializingBean接口
//所以首先会调用
//判空扫描的包
public void afterPropertiesSet() throws Exception {
    notNull(this.basePackage, "Property 'basePackage' is required");
  }


//然后调用
 public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException {
    if (this.processPropertyPlaceHolders) {
      processPropertyPlaceHolders();
    }

    ClassPathMapperScanner scanner = new ClassPathMapperScanner(registry);
    scanner.setAddToConfig(this.addToConfig);
    scanner.setAnnotationClass(this.annotationClass);
    scanner.setMarkerInterface(this.markerInterface);
    scanner.setSqlSessionFactory(this.sqlSessionFactory);
    scanner.setSqlSessionTemplate(this.sqlSessionTemplate);
    scanner.setSqlSessionFactoryBeanName(this.sqlSessionFactoryBeanName);
    scanner.setSqlSessionTemplateBeanName(this.sqlSessionTemplateBeanName);
    scanner.setResourceLoader(this.applicationContext);
    scanner.setBeanNameGenerator(this.nameGenerator);
    scanner.registerFilters();
    //扫描注册BeanDefinition,需要注意的是这里扫描注册的beanClass是MapperFactoryBean。definition.setBeanClass(MapperFactoryBean.class);
    scanner.scan(StringUtils.tokenizeToStringArray(this.basePackage, ConfigurableApplicationContext.CONFIG_LOCATION_DELIMITERS));
  }

 
 //最后调用
 public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) {
    // left intentionally blank
  }

  /** 该类就是扫描mapper所在的package,然后注册到BeanDefinitionRegistry中。交由spring的finishBeanFactoryInitialization(beanFactory);
  方法来加载bean。*/



分享到:
评论

相关推荐

    mybatis与spring整合的全部jar包

    以上就是关于“mybatis与spring整合的全部jar包”的详细知识点,这些组件共同构建了一个灵活且易于维护的Java Web应用程序。通过理解这些概念和技术,开发者可以更好地理解和使用SSM框架来开发复杂的企业级应用。

    mybatis与spring整合全部jar包

    这个“mybatis与spring整合全部jar包”包含了这三个框架整合所需的所有依赖库,使得开发者可以快速搭建SSM项目。 首先,让我们深入了解一下这三个组件: 1. **Spring**:Spring 是一个全面的Java企业级应用开发...

    mybatis-spring 整合包

    MyBatis-Spring 整合包是专门为将MyBatis持久层框架与Spring应用框架集成而设计的一个组件。这个包的出现旨在简化MyBatis在Spring环境中的配置和使用,使得开发者可以充分利用两者的优点,实现更加灵活和方便的数据...

    mybatis与spring整合全部jar包(包括springmvc

    在标题提到的“mybatis与spring整合全部jar包(包括springmvc)”中,我们关注的重点是这两个框架的集成以及可能包含的Spring MVC部分,这通常涉及到以下几个关键知识点: 1. **MyBatis**:MyBatis是一个优秀的持久层...

    mybatis与spring整合依赖包集

    本"mybatis与spring整合依赖包集"包含了一系列必要的库,使得开发者能够轻松地搭建集成环境,进行高效的数据访问。 首先,MyBatis是一个优秀的持久层框架,它简化了SQL操作,将SQL语句直接映射到Java方法,避免了...

    MyBatis与Spring整合jar包(1).rar

    MyBatis与Spring整合是Java开发中常见的技术组合,它们的整合可以让我们在使用Spring管理事务和依赖注入的同时,利用MyBatis强大的SQL映射功能。这个名为"MyBatis与Spring整合jar包(1).rar"的压缩包,很可能是包含了...

    mybatis-spring整合项目

    《mybatis-spring整合项目》是GitHub上官方提供的一个示例,它展示了如何将MyBatis和Spring框架完美地结合起来,实现数据访问层的高效管理。这个项目为开发者提供了一个清晰的模板,帮助他们理解并掌握这两个强大...

    MyBatis_Spring整合jar包(全部jar包)

    MyBatis_Spring整合是Java开发中常见的数据访问层解决方案,它将MyBatis的灵活映射机制与Spring的依赖注入和事务管理相结合,提供了一种高效、便捷的数据操作方式。这个压缩包包含了进行MyBatis与Spring整合所需的...

    Mybatis与Spring整合创建Web项目

    以下是对"Mybatis与Spring整合创建Web项目"这一主题的详细说明: 一、Mybatis简介 Mybatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。Mybatis避免了几乎所有的JDBC代码和手动设置参数以及...

    mybatis-Spring整合jar包

    通过这些知识点,我们可以理解MyBatis-Spring整合的核心原理和使用方法,从而在实际项目中更有效地利用这两个强大的框架。这个整合jar包提供了一站式的解决方案,让开发者无需关注底层的细节,更专注于业务逻辑的...

    spring_mybatis 整合jar包

    在与Spring整合后,可以通过Spring的ApplicationContext来管理SqlSessionFactory和Mapper接口,实现事务的统一管理和DAO的自动注入。 在压缩包子文件的文件名称列表中,虽然只列出了"lib",但我们可以推测,这个...

    MyBatis-Spring整合示例

    《MyBatis-Spring整合详解》 在Java开发中,MyBatis和Spring是两个非常重要的框架,它们各自在持久层和应用层有着广泛的应用。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射,而Spring...

    Mybatis与Spring整合所需完整jar包(包含连接池的jar包)

    在本资源中,我们收集了整合MyBatis与Spring所需的全部jar包,同时也包含了连接池的jar包,以优化数据库性能。 首先,MyBatis框架的核心jar包包括MyBatis的核心库mybatis-x.x.x.jar,它包含了MyBatis的SQL映射、...

    mybatis-spring-1.31.jar

    MyBatis-Spring 1.3.1.jar是MyBatis与Spring框架深度整合的一个重要组件,它允许开发者在Spring环境下无缝地使用MyBatis。这个版本是官方发布的最新稳定版,经过实际测试,确保了其稳定性和兼容性。 MyBatis-Spring...

    mybatis与spring整合jar包

    本篇将详细阐述MyBatis与Spring整合的关键知识点,以及如何使用`mybatis-spring-1.2.2`整合包。 一、MyBatis简介 MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的...

    mybatis-spring整合包.zip

    MyBatis-Spring整合后,主要实现以下功能: 1. **SqlSessionFactoryBean**:MyBatis-Spring提供了一个SqlSessionFactoryBean,它继承自Spring的AbstractSqlSessionFactoryBean,用于创建SqlSessionFactory。开发者...

    mybatis-spring整合简单的实例代码

    【标题】"mybatis-spring整合简单实例代码"所涉及的知识点主要集中在如何将MyBatis与Spring框架进行集成,以便在Spring应用中利用MyBatis进行数据访问。这一过程通常包括以下几个关键步骤: 1. **环境配置**:首先...

    MyBatis_Spring整合代码案例.zip

    【标题】"MyBatis_Spring整合代码案例.zip" 提供了一个关于MyBatis与Spring框架集成的实际应用示例。这个压缩包包含了实现这一整合所需的关键文件,让我们深入探讨一下这个整合过程中的重要知识点。 首先,MyBatis...

    mybatis和spring整合jar

    这个`mybatis-spring-1.2.0-SNAPSHOT-bundle`文件就是这种整合的核心组件,包含了使MyBatis与Spring协同工作的所有必要类和配置。 1. **MyBatis-Spring的核心功能:** - **SqlSessionFactoryBean**:这是一个...

Global site tag (gtag.js) - Google Analytics