在用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>
總結:要養成良好的書寫規范,你踩過的坑,別人也早就踩過了,站在巨人的肩膀上,你會看的更遠。