Aso*_*oub 5 java sql postgresql spring
我一直在尝试配置使用xml Spring配置文件中声明的postgresql数据源建立的连接.
<bean id="myDataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.postgresql.Driver" />
<property name="url" value="jdbc:postgresql://localhost:5432/dbname" />
<property name="username" value="postgres" />
<property name="password" value="" />
<property name="socketTimeout" value="10"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
我知道,我不应该DriverManagerDataSource从春天开始使用这个课程(我们很快会转到C3p0或DBCP)因为它不是真正的汇集.我正在尝试设置postgresql连接的socketTimeout值(在此处描述https://jdbc.postgresql.org/documentation/head/connect.html)但当然,"socketTimeout"不是数据源的属性,所以它不起作用.
是否可以通过datasource xml的配置来实现?或者我应该在别处做什么?因为数据源管理连接我不认为我能做到
props.setProperty("timeout",30);
Connection conn = DriverManager.getConnection(url, props);
Run Code Online (Sandbox Code Playgroud)
我甚至可以使用DriverManagerDataSource执行此操作吗?我试图搜索,但我找不到任何有用的东西,因为没有很多人真正使用它.
谢谢M. Deinum,我能够找到.实际上,即使知道该属性被命名为"connectionProperties",我也没有找到很多答案(也许人们很少这样使用它?).所以我发布了它:
<bean id="myDataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.postgresql.Driver" />
<property name="url" value="jdbc:postgresql://localhost:5432/dbname" />
<property name="username" value="postgres" />
<property name="password" value="" />
<!--<property name="socketTimeout" value="10"/>-->
<property name="connectionProperties">
<props>
<prop key="socketTimeout">10</prop>
</props>
</property>
</bean>
Run Code Online (Sandbox Code Playgroud)
如果有人有更好/更完整的答案,我会检查出来;)
| 归档时间: |
|
| 查看次数: |
21592 次 |
| 最近记录: |