Package org.mybatis.spring.mapper
Class MapperFactoryBean<T>
java.lang.Object
org.springframework.dao.support.DaoSupport
org.mybatis.spring.support.SqlSessionDaoSupport
org.mybatis.spring.mapper.MapperFactoryBean<T>
- All Implemented Interfaces:
org.springframework.beans.factory.FactoryBean<T>
,org.springframework.beans.factory.InitializingBean
public class MapperFactoryBean<T> extends SqlSessionDaoSupport implements org.springframework.beans.factory.FactoryBean<T>
BeanFactory that enables injection of MyBatis mapper interfaces. It can be set up with a SqlSessionFactory or a
pre-configured SqlSessionTemplate.
Sample configuration:
<bean id="baseMapper" class="org.mybatis.spring.mapper.MapperFactoryBean" abstract="true" lazy-init="true">
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
<bean id="oneMapper" parent="baseMapper">
<property name="mapperInterface" value="my.package.MyMapperInterface" />
</bean>
<bean id="anotherMapper" parent="baseMapper">
<property name="mapperInterface" value="my.package.MyAnotherMapperInterface" />
</bean>
Note that this factory can only inject interfaces, not concrete classes.
- Author:
- Eduardo Macarron
- See Also:
SqlSessionTemplate
-
Field Summary
Fields inherited from class org.springframework.dao.support.DaoSupport
logger
Fields inherited from interface org.springframework.beans.factory.FactoryBean
OBJECT_TYPE_ATTRIBUTE
-
Constructor Summary
Constructors Constructor Description MapperFactoryBean()
MapperFactoryBean(Class<T> mapperInterface)
-
Method Summary
Modifier and Type Method Description protected void
checkDaoConfig()
Class<T>
getMapperInterface()
Return the mapper interface of the MyBatis mapperT
getObject()
Class<T>
getObjectType()
boolean
isAddToConfig()
Return the flag for addition into MyBatis config.boolean
isSingleton()
void
setAddToConfig(boolean addToConfig)
If addToConfig is false the mapper will not be added to MyBatis.void
setMapperInterface(Class<T> mapperInterface)
Sets the mapper interface of the MyBatis mapperMethods inherited from class org.mybatis.spring.support.SqlSessionDaoSupport
createSqlSessionTemplate, getSqlSession, getSqlSessionFactory, getSqlSessionTemplate, setSqlSessionFactory, setSqlSessionTemplate
Methods inherited from class org.springframework.dao.support.DaoSupport
afterPropertiesSet, initDao
-
Constructor Details
-
MapperFactoryBean
public MapperFactoryBean() -
MapperFactoryBean
-
-
Method Details
-
checkDaoConfig
protected void checkDaoConfig()- Overrides:
checkDaoConfig
in classSqlSessionDaoSupport
-
getObject
-
getObjectType
- Specified by:
getObjectType
in interfaceorg.springframework.beans.factory.FactoryBean<T>
-
isSingleton
public boolean isSingleton()- Specified by:
isSingleton
in interfaceorg.springframework.beans.factory.FactoryBean<T>
-
setMapperInterface
Sets the mapper interface of the MyBatis mapper- Parameters:
mapperInterface
- class of the interface
-
getMapperInterface
Return the mapper interface of the MyBatis mapper- Returns:
- class of the interface
-
setAddToConfig
public void setAddToConfig(boolean addToConfig)If addToConfig is false the mapper will not be added to MyBatis. This means it must have been included in mybatis-config.xml.If it is true, the mapper will be added to MyBatis in the case it is not already registered.
By default addToConfig is true.
- Parameters:
addToConfig
- a flag that whether add mapper to MyBatis or not
-
isAddToConfig
public boolean isAddToConfig()Return the flag for addition into MyBatis config.- Returns:
- true if the mapper will be added to MyBatis in the case it is not already registered.
-