解决:Access denied for user 'root'@'localhost' (using password: YES)

时间:2022-03-24 20:58:16

症状:

  重新安装了MySQL,改变了root的密码,因此,在java代码中修改了某个DatabaseConnectionImpl的DBPASSWORD

  在java中写了一些代码测试MySQL的插入和查询操作,直接作为java-application运行,正常

  在jsp中调用了java写的DAO类进行数据库添加和查询操作,通过浏览器链接到tomcat运行,报exception,提示Access denied for user 'root'@'localhost' (using password: YES)

分析:

  我修改了java代码中的DBPASSWORD,作为java-application直接运行,链接到MySQL的时候使用的自然就是最新的DBPASSWORD

  但是由于没有把class文件deploy到/WEB-INF/classes目录下,所以导致了通过tomcat运行的时候,使用的就是陈旧的DBPASSWORD,密码错误

解决方案:

  把更新后的java的class文件发布到/WEB-INF/classes目录下,重新启动tomcat即可