如何在没有WSConnection的情况下设置客户端信息

时间:2019-01-17 19:35:13

标签: java jdbc db2 websphere

我们的项目使用Websphere,我们必须使用WSConnection设置“客户信息”。 DB2数据库将这些用于审计。这在Websphere中很好用。但是,我们现在想在Websphere外部运行的控制台应用程序中使用相同的代码库。因此,我想更改以下代码以了解是否与Websphere无关。

还有其他一些标准的方法可以完成以下任务吗?使用直jdbc?还是让我不创建从此代码到Websphere及其库的依赖关系的其他方法?

            Properties props = new Properties();

            props.setProperty(WSConnection.CLIENT_ID, userid);
            props.setProperty(WSConnection.CLIENT_APPLICATION_NAME, bpcode);

            if (connection instanceof WSConnection) {
                WSConnection wconn = (WSConnection) connection;
                wconn.setClientInformation(props);
            } else {
                log.error("Connection was NOT an instance of WSConnection so client ID and app could not be set");
            }

1 个答案:

答案 0 :(得分:2)

是的,已在JDBC中添加了用于设置客户端信息的标准接口。

您可以使用connection.setClientInfo(name, value)分别设置每个属性,

或者,您可以通过connection.setClientInfo(properties)

一次全部设置

要确定驱动程序支持的确切的客户端信息属性名称集,请使用databaseMetaData.getClientInfoProperties()方法。