springとmybatisを統合すると、次のようなエラー出力が発生しました。
'sqlSessionFactory'という名前のBeanは、タイプ[org.mybatis.spring.SqlSessionFactoryBean]である必要がありますが、実際にはタイプ[org.apache.ibatis.session.defaults.DefaultSqlSessionFactory]でした。
これが私のコードスニペットです:
ApplicationContext context = new ClassPathXmlApplicationContext("spring_mybatis_integration/spring_config.xml");
SqlSessionFactoryBean sqlSessionFactoryBean = context.getBean("sqlSessionFactory", org.mybatis.spring.SqlSessionFactoryBean.class);
これがxmlでの私のBean定義です:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="spring_mybatis_integration/mybatis_config.xml"></property>
<property name="dataSource" ref="dataSource"></property>
</bean>
ご覧のとおり、Javaコードとxmlファイルの両方で、BeansqlSessionFactory
をクラスに関連付けてorg.mybatis.spring.SqlSessionFactoryBean
いますが、エラー出力で別の非相対クラス名が表示されるのはなぜorg.apache.ibatis.session.defaults.DefaultSqlSessionFactory
ですか?
どうもありがとう!
バージョン情報:
- mybatis 3.1.1
- 春3.2.0
- mybatis-春1.1.1