最近来了一个新项目,说是新的项目,但是需要用到以前旧的模块代码,旧的模块使用架构为ssi
而新项目使用spring mvc +mybatis,考虑到工作量的问题,所以决定使用spring mvc +mybatis、ibatis来进行开发。
配置sqlSessionFactory
<!-- MyBatis配置 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 自动扫描entity目录, 省掉Configuration.xml里的手工配置 -->
<property name="typeAliasesPackage" value="com.aspire.**.entity" />
<!-- 显式指定Mapper文件位置 -->
<property name="mapperLocations">
<list>
<value>classpath*:/com/aspire/**/mysql/*.xml</value>
</list>
</property>
<property name="plugins">
<list>
<ref bean="paginationInterceptor" />
</list>
</property>
</bean>
mybatis分页拦截器
<bean id="paginationInterceptor"
class="com.aspire.mmcp.common.mybatis.interceptor.PaginationInterceptor">
<property name="databaseType" value="mysql" />
</bean>
dao扫描配置
<!-- 扫描basePackage下所有以@Repository标识的 接口 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.aspire.mmcp" />
<property name="annotationClass" value="org.springframework.stereotype.Repository" />
</bean>
兼容ibatis的sqlMapClient配置
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocations">
<list>
<value>classpath:/sqlMapConfig-domain-basic.xml</value>
<value>classpath:/sqlMapConfig-domain-authsims.xml</value>
<value>classpath:/sqlMapConfig-domain-preq.xml</value>
</list>
</property>
<property name="dataSource" ref="dataSource" />
</bean>