zoukankan      html  css  js  c++  java
  • Spring整合Mybaits java.sql.SQLException: Access denied for user '***'@'localhost' (using password: YES)

    最近在搞Spring和Mybatis的整合,当我们在Spring里面配置数据源,而数据源是从外部的properties文件读取过来的时候就会报错

    java.sql.SQLException: Access denied for user 'Rebirth'@'localhost' (using password: YES)

    db.properties

    driver=com.mysql.jdbc.Driver
    url=jdbc:mysql:///test
    username=root
    password=admin

    spring的数据源配置代码

     <!--  加载数据库属性配置文件  -->
        <context:property-placeholder location="classpath:db.properties"/>
    
        <!--  配置数据源 -->
        <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            <property name="driverClassName" value="${driver}"/>
            <property name="url" value="${url}"/>
            <property name="username" value="${username}"/>
            <property name="password" value="${password}"/>
        </bean>

    查找原因后发现,就是因为配置数据库用户名username可能和系统环境变量的某些关键字的冲突,导致了spring读取到的值是系统所有人的用户名

    那么我们只需要把 数据库配置文件里面的properties的username改为任意的其它:例如name

    driver=com.mysql.jdbc.Driver
    url=jdbc:mysql:///test
    name=root
    password=admin
    <!--  配置数据源 -->
        <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            <property name="driverClassName" value="${driver}"/>
            <property name="url" value="${url}"/>
            <property name="username" value="${name}"/>
            <property name="password" value="${password}"/>
        </bean>

    完美解决

  • 相关阅读:
    Qt uchar * 转 QImage
    WIN10 蓝牙连接音箱之后,音量调节无效,音量从1-100,声音一样大,都是最大声,可以静音(解决方案)
    OpenGL 保存bmp图像
    Qt 使用自带的OpenGL模块开发程序
    OpenCVSharp介绍
    OpenCV介绍
    OpenAL介绍
    OpenCL介绍
    OpenGL介绍
    Qt 无法打开包括文件:“QGLWidget”: No such file or directory
  • 原文地址:https://www.cnblogs.com/arebirth/p/javaspringex1.html
Copyright © 2011-2022 走看看