關於Could not load driverClass ${jdbc.driverClassName}問題解決方案


轉自https://www.cnblogs.com/tmftmb/p/7173846.html

在spring與mybatis3整合時一直遇到Could not load driverClass ${jdbc.driverClassName}報錯
如果將 ${jdbc.driverClassName} 改成具體的值就不會報錯!

解決方案一:

  <property name="sqlSessionFactoryref="sqlSessionFactory"/>

改成

  <property name="sqlSessionFactoryBeanNamevalue="sqlSessionFactory"/>


記住ref要改成value 

原因分析:是因為配置了class="org.mybatis.spring.mapper.MapperScannerConfigurer",而這句代碼會在數據源加載前就執行了,之后就把表達式${jdbc.driverClassName}當成字符串執行了。

 

解決方案二:

  <!-- 配制會話工廠 -->
  <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    //此處省略代碼。。。
  </bean>

將 id="sessionFactory" 改成 id="sqlSessionFactory"

然后將方案一中的 <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>注釋掉。

原因分析:當id="sqlSessionFactory"時程序會在Ioc容器中自動裝配。單詞不能寫錯!!

 <--有其它更多方法,請評論-->


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM