[英]How to go capture the response time of executing multiple queries simultaneously in Java?
[英]multiple queries java jdbc - read records simultaneously
我有多個查詢,希望使用與SQL Server的Java JDBC連接同時讀取數據。
在單個查詢中,我知道您可以按以下方式遍歷記錄
while (rs.next()){
//get record and do stuff
}
但是,如果我有多個記錄集,該如何同時為每個記錄集執行此操作。 每個結果集的長度相同。 我實際上做了一系列結果集,以為可以遍歷結果集,如下所示...
for (int i = 0;i<NUM_RECORDSETS;i++){
while(rs[i].next()){
//get stuff from this recordset
}
}
...但是我不想一次遍歷一個。 我希望能夠使每個結果集的光標位置同步移動。 有沒有一種方法可以手動移動光標,或者最好的方法是什么?
如果我正確理解了您的問題,那么您將遇到以下情況:
Record pos : 0 | 1 | 2 | 3
ResultSet-1: A1 | B1 | C1 | D1
ResultSet-2: A2 | B2 | C2 | D2
ResultSet-3: A3 | B3 | C3 | D3
您想按以下順序遍歷結果:
A1, A2, A3, B1, B2, B3, ...
您最初發布的代碼將按以下順序進行迭代:
A1, B1, C1, D1, A2, ...
只需在for循環內移動for循環即可實現該模式:
while(rs.length > 0 && !rs[0].isAfterLast()){
for (int i = 0; i < NUM_RECORDSETS; i++){
rs[i].next();
//get stuff from this recordset
}
}
如果我誤解了您的問題,並且您想同時讀取結果集(如在多線程中一樣),則我強烈不建議這樣做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.