请教使用mybatis用到的注解方式转换为xml配置方式
使用mybatis拦截分页时用的一个拦截器
这是xml文件中配置的
- Java code
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="plugins" ref="paginationInterceptor"/> </bean> <bean id="paginationInterceptor" class="**.PaginationInterceptor" />
以下是PaginationInterceptor类
- Java code
//只拦截select部分@Intercepts( {@Signature(type = Executor.class, method = "query", args = {MappedStatement.class, Object.class, RowBounds.class, ResultHandler.class})})public class PaginationInterceptor implements Interceptor { public Object intercept(Invocation invocation) throws Throwable { …… …… }}
注解部分
@Intercepts( {@Signature(type = Executor.class, method = "query", args = {MappedStatement.class, Object.class,
RowBounds.class, ResultHandler.class})})
如果不用注解方式,直接在xml里配置,该怎么写呢?
[解决办法]
你这个和MyBatis就没多大关系...这不是Spring的拦截器吗...
[解决办法]
<bean id="ServiceAutoProxyCreator" class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="proxyTargetClass" value="true"></property>
<property name="beanNames">
<list>
<value>*Service</value> ..
</list>
</property>
</bean>
[解决办法]
这个拦截器操作的是plugin
这本身就是MyBatis的底层实现,这部分没有xml
重写了plugin就意味着,你改变了MyBatis本身的执行逻辑