springboot yml 檔案配置oracle,提示賬號密碼錯誤
最近使用Spring boot,本來一直連線的是mysql資料庫,一直沒問題。昨天在更換了oracle資料庫後,一直提示賬號密碼不正確,登入被拒絕。檢查多次,檢查賬號密碼一切正常,但就是連線不上oracle.
java.sql.SQLException: ORA-01017: invalid username/password; logon denied
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:445)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:389)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:382)
at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:600)
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:445)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:450)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:380)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:760)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:401)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:546)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:236)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1570)
at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1636)
at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2505)
沒辦法,只能從最根本的地方入手,終於,在DBconfig.java中配置資料來源的值仍然是mysql,沒修改,馬上動手修改。
啟動專案,測試,發現問題仍在,這就奇怪了,然後在debug,看資料來源資訊,這才發現問題所在,如圖:
什麼?密碼竟然是一個0?我配置檔案的密碼明明是6個0啊,怎麼辦呢,因為才學著使用springboot,就試著給配置檔案的密碼加了引號 ‘000000’
儲存,重新啟動專案,檢查資料來源,沒問題。
開啟資料庫相關操作,果然正常!!!
在之前接觸的配置檔案中配置000000是絕對沒問題的,我為什麼在yml中6個0會被變成1個0?簡直是坑啊。
具體原因沒有深究,可能是yml檔案會吧純數字的字串當數字處理吧。