如何从PreparedStatement
获取sessionId?
在调试模式下我可以这个
((T4CConnection) ((T4CPreparedStatement) ((OraclePreparedStatementWrapper) ps).preparedStatement).connection).sessionId
但我怎样才能在班上得到这个sessionId
?
答案 0 :(得分:2)
Field sessionIdField = ps.getConnection().getClass().getDeclaredField("sessionId");
Field serialNumberField = ps.getConnection().getClass().getDeclaredField("serialNumber");
sessionIdField.setAccessible(true);
serialNumberField.setAccessible(true);
Object sessionId = sessionIdField.get(ps.getConnection());
Object serialNumber = serialNumberField.get(ps.getConnection());