本文转自 http://hi.baidu.com/v5759107/blog/item/58d88ccc065de90d01e928c3.html
内容没有亲身调试,若有错误,欢迎留言,讨论
没有必要在Spring的XML配置文件中注册所有的映射器。相反,你可以使用一个MapperScannerConfigurer,它将会查找类路径下的映射器并自动将它们创建成MapperFactoryBeans。要创建MapperScannerConfigurer,可以在Spring的配置中添加如下代码:
Xml代码
-
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
-
<propery name="basePackage" value="org.mybatis.spring.sample.mapper"/>
- </bean>
basePackage属性是让你为映射器接口文件设置基本的包路径。你可以使用分号或逗号作为分隔符设置多于一个的包路径。每个映射器将会在指定的包路径中递归地被搜索到。
注意,没有必要去指定SqlSessionFactory或SqlSessionTemplate,因为MapperScannerConfigurer将会创建MapperFactoryBean,之后自动装配。但是,如果你使用了一个以上的DataSource(因此,也是多个的SqlSessionFactory),那么自动装配可能会失效。这种情况下,你可以使用sqlSessionFactory或sqlSessionTemplate属性来设置正确的工厂/模板。
MapperScannerConfigurer支持过滤由指定的创建接口或注解创建映射器。annotationClass属性指定了要寻找的注解名称。markerInterface属性指定了要寻找的父接口。如果两者都被指定了,加入到接口中的映射器会匹配两种标准。默认情况下,这两个属性都是null,所以在基包中给定的所有接口可以作为映射器加载。
被发现的映射器将会使用Spring对自动侦测组件默认的命名策略来命名。也就是说,如果没有发现注解,它就会使用映射器的非大写的非完全限定类名。但是如果发现了@Component或JSR-330@Named注解,它会获取名称
分享到:
相关推荐
《MyBatis-MapperScannerConfigurer配合详解》 在MyBatis框架中,MapperScannerConfigurer是一个非常重要的工具类,它能够帮助我们自动扫描指定包下的Mapper接口,并将其注册到SqlSessionFactory中,极大地简化了...
在MyBatis-Spring整合中,`MapperScannerConfigurer`是一个非常重要的组件,它的主要作用是自动扫描指定包下的Mapper接口,并将这些接口动态地实现为DAO层的实现类,然后将这些实现类注入到Spring容器中,从而避免...
利用JAVA代理Proxy机制实现spring对ibaits的MapperScannerConfigurer功能 详细:http://blog.csdn.net/wq105032007067/article/details/8812598
2. **MapperScannerConfigurer**: 这是Spring的一个Bean,用于扫描指定包下的Mapper接口,将它们自动注册到Spring容器中。这样,Spring可以管理这些Mapper接口的实例,方便我们在服务层通过@Autowired注解进行依赖...
除了显式地配置每个映射器接口外,还可以通过`MapperScannerConfigurer`来实现自动扫描和配置映射器接口。 ```xml <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> ``` #### 七、使用...
【部分内容】:本课程主要讲解MyBatis的高级特性,包括SqlSessionFactoryBean、MapperFactoryBean和MapperScannerConfigurer这三个核心类的源码分析。同时,课程还涉及到了MyBatis的插件开发原理,如Interceptor拦截...
MapperScannerConfigurer configurer = new MapperScannerConfigurer(); configurer.setBasePackage("com.duodian.admore.dao.*"); return configurer; } @Bean public SqlSessionFactoryBean ...
MapperScannerConfigurer mapperScannerConfigurer = new MapperScannerConfigurer(); mapperScannerConfigurer.setBasePackage("com.example.mapper"); // 替换为你的Mapper接口所在包 return ...
本文将深入探讨使用MyBatis进行数据处理的四种主要方式:SqlSessionTemplate、SqlSessionDaoSupport、MapperFactoryBean以及MapperScannerConfigurer。这四种方式各有特点,适用于不同的场景和需求。 ### ...
MapperScannerConfigurer scannerConfigurer = new MapperScannerConfigurer(); scannerConfigurer.setBasePackage("com.example.demo.mapper"); return scannerConfigurer; } } ``` 最后,我们可以在Service层...
`MapperScannerConfigurer` 是Spring的一个扫描器,用于在Spring启动时自动查找指定包下的所有Mapper接口,并将其转换为`MapperFactoryBean`。这样,Spring容器就能管理这些Mapper接口,使得我们可以在业务逻辑中...
MapperScannerConfigurer configurer = new MapperScannerConfigurer(); configurer.setBasePackage("com.example.primary.mapper"); configurer.setSqlSessionFactoryBeanName("primarySqlSessionFactory"); //...
MapperScannerConfigurer scannerConfigurer = new MapperScannerConfigurer(); scannerConfigurer.setBasePackage("com.example.myapp.mapper"); // 替换为你的Mapper接口所在的包 return scannerConfigurer; }...
MapperScannerConfigurer scannerConfigurer = new MapperScannerConfigurer(); scannerConfigurer.setBasePackage("com.example.demo.mapper"); return scannerConfigurer; } } ``` 完成以上步骤后,我们就...
MapperScannerConfigurer configurer = new MapperScannerConfigurer(); configurer.setBasePackage("com.example.demo.mapper"); // 替换为你的Mapper接口包路径 return configurer; } } ``` 4. 编写Mapper...
- **配置文件**:整合的关键在于配置Spring的Bean定义,包括数据源、SqlSessionFactory、MapperScannerConfigurer以及MyBatis的SqlSessionTemplate或SqlSessionDaoSupport。 2. **数据源配置** - **DataSource**...
MapperScannerConfigurer configurer = new MapperScannerConfigurer(); configurer.setBasePackage("com.example.primary.mapper"); configurer.setSqlSessionFactoryBeanName("primarySqlSessionFactory"); ...
MyBatis-Spring 的主要组件包括 SqlSessionFactoryBean、SqlSessionTemplate 和 MapperScannerConfigurer。 1. SqlSessionFactoryBean:它是 Spring 中用于创建 SqlSessionFactory 的 Bean,它会读取配置文件,创建...
MapperScannerConfigurer configurer = new MapperScannerConfigurer(); configurer.setBasePackage("com.example.demo.mapper.primary"); configurer.setSqlSessionFactoryBeanName("primarySqlSessionFactory")...
2. MyBatisNamespaceParser:它是MyBatis-Spring中的一个XML解析器,用于处理Spring配置文件中的mybatis标签,解析MapperScannerConfigurer,自动扫描并加载Mapper接口。 3. SqlSessionTemplate:这是MyBatis-...