通过JDBC连接时,在会话信息中显示应用程序名称

时间:2011-08-22 10:13:06

标签: java postgresql jdbc pgadmin

我使用stardard JDBC驱动程序创建了与postgres 9数据库的连接。

...
Connection myCon = DriverManager.getConnection("jdbc:postgresql://localhost/test?&user=test&password=test"); 
...

当我使用PgAdmin检查服务器状态并显示所有数据库会话时,我可以看到没有为我的会话设置“应用程序名称”。有没有办法在JDBC连接中设置应用程序名称?

1 个答案:

答案 0 :(得分:10)

从Postgres JDBC 9.1dev-900开始,可以将应用程序名称设置为连接参数:

  

添加对在两个连接启动时设置application_name的支持   然后通过Connection.setClientInfo。 (jurka)

ex:jdbc:postgresql://localhost:5432/DbName?ApplicationName=MyApp

Connection.setClientInfo("ApplicationName", "My App")

对于以前的版本,您可以通过设置application_name运行时参数:

来完成此操作
s.execute("SET application_name TO 'MyApp'");