WEB开发网
开发学院软件开发Java Java EE 应用中对前端用户的数据库操作的审计 阅读

Java EE 应用中对前端用户的数据库操作的审计

 2010-09-26 00:00:00 来源:WEB开发网   
核心提示: 设置用户标识信息,执行一些数据库操作,Java EE 应用中对前端用户的数据库操作的审计(2),清除连接上的用户标识,关闭数据库会话,第二个方法和第一个方法功能类似,只是将参数放到了一个 Properties 对象中,其中,清除连接上的标识非常重要

设置用户标识信息。

执行一些数据库操作。

清除连接上的用户标识。

关闭数据库会话。

其中,清除连接上的标识非常重要,因为我们通常使用的数据库连接都是逻辑连接,关闭逻辑连接后其对应的物理连接 (TCP/IP 连接 ) 并未关闭,所以清除连接上的标识信息可以确保不影响别的数据库逻辑连接。

JDBC 4.0 提供的支持

Java 6 支持 JDBC 4.0 规范,在 JDBC 4.0 中提供了在数据库连接 java.sql.Connection 上传递用户信息的支持。在该接口中提供了两个方法:

void setClientInfo(String name, String value) throws SQLClientInfoException; 
void setClientInfo(Properties properties) throws SQLClientInfoException; 

第一个方法允许我们在 Connection 上传递三个属性:

ApplicationName:访问数据库的应用程序名称。

ClientUser: 访问数据库的用户标识,这个用户和建立数据库连接的用户是不同的。建立数据库连接的用户是被能数据库认证和被授权过的用户。

ClientHostname:访问数据库客户端的主机名。

第二个方法和第一个方法功能类似,只是将参数放到了一个 Properties 对象中。我们通常 setClientInfo(“ClientUser” , userId) 将用户标识附加在数据库连接上。使用该方法的常见模式是:

清单 1. 使用 JDBC 4.0 API 传递用户标识

Connection conn = getConnection(); 
conn.setClientInfo("ClientUser" , currentUserId); 
//do something on the connection 
conn.setClientInfo("ClientUser" , null); 
conn.close(); 

上一页  1 2 3 4 5 6 7  下一页

Tags:Java EE 应用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接