分析:Access denied for user '44401'@'localhost' (using password: YES),這裏Mysql連接的用戶名爲電腦的系統名,不是數據庫中的用戶名root
原因:在Spring完成注入時是用 "${..}" 方式獲取值完成注入的。而通過這種表達式也能直接獲取到JVM系統屬性。
因爲在系統中也有個username屬性,這時系統變量覆蓋了Properties中的值,這時取得username的值爲系統的用戶名44401(主機名),密碼爲properties中的password去查詢數據庫,此時用戶名名和密碼並不匹配就會報錯。
如配置文件:
解決:將properties中的username加個前綴
運行OK