关于Could not load driverClass ${jdbc.driverClassName}问题解决方案

在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容器中自动装配。单词不能写错!!

<--有其它更多方法,请评论-->

时间: 2024-09-30 18:34:38

关于Could not load driverClass ${jdbc.driverClassName}问题解决方案的相关文章

spring+mybatis整合,org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class &#39;${jdbc.driverClassName}

在使用spring+mybatis时会出现Cannot load JDBC driver class ${jdbc.driverClassName}之类的出错. 原因是在spring里使用org.mybatis.spring.mapper.MapperScannerConfigurer 进行自动扫描的时候,设置了sqlSessionFactory 的话,可能会导致PropertyPlaceholderConfigurer失效,也就是用${jdbc.username}这样之类的表达式,将无法获取到

c3p0数据源配置抛出Could not load driverClass com.mysql.jdbc.Driver的解决方案

回答1: spring 加载数据库连接驱动的时候出现找不到驱动类解决办法. com.mchange.v2.c3p0.DriverManagerDataSourceensureDriverLoaded 1,  首先确定是否有相应的驱动包 2,  查看配置数据库连接文件每行的末尾是否有空格. 回答2: 1.0 配置c3p0数据源,一直提示 无法加载数据库驱动. 但是明明有驱动,非常疑惑..... com.mchange.v2.c3p0.DriverManagerDataSource ---- Cou

Could not load driverClass jdbc:mysql://localhost:3306/spring

今天出现编码出现了No suitable driver found for jdbc,又是找遍了网上的资料,基本上都说是三个问题:     一是:连接URL格式出现了问题(Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/XX","root","XXXX")     二是:驱动字符串出错(com.mysql.jdbc.Driver)     三是Cla

QT5 Failed to load platform plugin &quot;windows&quot; 终极解决方案 命令行问题

Failed to load platform plugin "windows" 这个错误在双击exe执行时不会出现,当传递命令行参数时出问题 ,解决方法: int main(int argc, char *argv[]) { Q_INIT_RESOURCE(rc); //解决库路径问题[email protected] QTextCodec *xcodec = QTextCodec::codecForLocale() ; QString exeDir = xcodec->toU

IDE安装完成无法打开,报错Fail load JVM DLL 问题与解决方案

安装完成pycharm 在打开pycharm的时候出现报错 Fail load JVM DLL xxxx xxx. 解决方案 安装Microsoft Visual C++ 2010 Redistributable Package 32 bit: http://www.microsoft.com/download/en/details.aspx?id=5555 64 bit: http://www.microsoft.com/download/en/details.aspx?id=14632 然后

android jdbc 数据库连接错误解决方案

今天用Eclipse突然在控制台出现如下错误,没有办法运行程序: [plain] view plaincopyprint? Invalid layout of java.lang.String at value A fatal error has been detected by the Java Runtime Environment: Internal Error (javaClasses.cpp:129), pid=15238, tid=140306591237888 fatal erro

ORACLE11g:No Dialect mapping for JDBC type: -9解决方案

问题来源: 煞笔领导不干活 好不容易干了个活 改了个字段长度,从varchar2(50) 改成了nvarchar(100) 结果因为方言问题,程序起不来了 字段类型也改不回来了 nnd 报错如下: 解决方案 由于hibernate4.2.0和Oracle10g数据库结合使用自定义方言时,需要和老版本做区别,原来的Oracle10gDialect中没有注册NVARCHAR和NCLOB数据类型, 此二者的java.sql.Types对应的类型编码为-9和2011,其它的类型可以参考下面的表1,解决思

org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class

org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class '${jdbc.driverClassName}' at org.springfra

JDBC数据源DBCP源代码情景分析

在之前的一篇博文从JDBC到commons-dbutils 中,我曾经写到,对于获取数据库连接,有一个解决方案,那就是数据源.业界用到的比较普遍的开源数据源解决方案有很多,DBCP是其中一种,今天,我试图从源代码角度去解读这个解决方案. 全文分为三节,第一节介绍DBCP一般的用法,第二节按照第一节中给出的用法,从源代码角度看看,到底程序经过了哪些步骤,第三小节对全文做一个总结. 1.DBCP的一般用法 DBCP的用法其实很简单,一般就是new一个BasicDataSource,然后设置参数,当需