0

2 つの jar をインポートする Web アプリがあります。

どちらの jar も MyBatis と Spring を使用します

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="configLocation" value="classpath:persistence/ormConfig-content-repository.xml" />  
    <property name="mapperLocations" value="classpath*:persistence/content-repository-mapper/*.xml" /> 
</bean>

どちらの場合も、sqlSessionFactory を使用する SqlSessionDaoSupport を使用しています

アプリをデプロイすると問題が発生します

web.xml:

<context-param>
<description>Spring config file</description>
<param-name>contextConfigLocation</param-name>
<param-value>
    classpath:jar1_conf.xml,
    classpath:jar2_conf.xml
</param-value>

基本的に、2 番目の jar で定義された sqlSessionFactory Bean は、最初の jar で定義されたものを上書きします。

私に何ができる?助けてください

4

1 に答える 1

0

役に立たない簡単な答えは、Spring の動作です。基本的に、1 つの ApplicationContext を作成し、同じ名前の 2 つの Bean をロードして、一方が他方を上書きするようにします。解決策は、アプリ用に複数の ApplicationContext を作成することです。

于 2013-03-26T14:39:22.630 に答える