Exception in thread "main" java.sql.SQLException: ORA-01017: invalid username/password; logon denied

在用spring配置文件applicationContext.xml中引入src下的properties文件

<context:property-placeholder location="classpath:jdbc.properties"/>

<!-- DriveManagerDataSource spring自带数据源实现对象 -->
<bean id="dataSource" class="${dataSource}"> <!-- 这些配置Spring在启动时会去jdbc.properties中找 -->
<property name="driverClassName" value="${driverClassName}" />
<property name="url" value="${url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${password}" />
</bean>

jdbc.properties:

dataSource=org.springframework.jdbc.datasource.DriverManagerDataSource
driverClassName=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:orcl
username=zhangsan
password=zs123

然后就报了Exception in thread "main" java.sql.SQLException: ORA-01017: invalid username/password; logon denied(大体就是无效的用户名或密码,登录失败)

自己用工具登录也没错啊,nm..

这尼玛,折腾半天,上网查了一下 有人说是 username这个变量名和系统的变量存在重复,遂修改这个变量名称 问题解决了。

修改了所有properties变量名称

jdbc.dataSource=org.springframework.jdbc.datasource.DriverManagerDataSource
jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl
jdbc.username=zhangsan
jdbc.password=zs123

相对应的在applicationContext.xml中 修改取值变量

<bean id="dataSource" class="${jdbc.dataSource}"> <!-- 这些配置Spring在启动时会去jdbc.properties中找 -->
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>

 

总结:要养成良好的书写规范,你踩过的坑,别人也早就踩过了,站在巨人的肩膀上,你会看的更远。

posted @ 2020-11-28 17:28  flyfish91  阅读(1527)  评论(0编辑  收藏  举报