2010-12-09 6 views
-1
public ResultObject takePrefixGroupId(ArrayList prefixGroupName) 
{ 
debugLog(MODULE_NAME, "Inside the takePrefixGroupId() of LCRConfigurationSessionBean"); 
ResultObject resultObject = new ResultObject(LCRResponseCode.LCR_CONFIGURE_SEARCH_ERROR_EJB, null); 

String strSelectQuery = null; 
String strMessage=null; 
ResultSet resSet = null; 
Collection colInValideRecord =new ArrayList(); 
Collection colErrorMessage=new ArrayList(); 
Collection colValidRecord = new ArrayList(); 
Collection colDataValidation=null; 
try{ 
    for(int i=0;i<prefixGroupName.size();i++) 
    { 
    strSelectQuery = "select DESTINATIONGROUPID from TBLMDESTINATIONGROUP where NAME='"+prefixGroupName.get(i)+"'"; 
    debugLog(MODULE_NAME, "Query::::::"+strSelectQuery); 
    resultObject = execute(strSelectQuery); 
    if(resultObject.getResponseCode() == LCRResponseCode.SUCCESS_RESPONSE_CODE) 
    { 
    resSet = (ResultSet)resultObject.getResponseObject(); 
    debugLog(MODULE_NAME, "resSet::::::"+resSet); 
    if(resSet != null) 
    { 
    while(resSet.next()) 
    { 
     colValidRecord.add(resSet.getString("DESTINATIONGROUPID")); 
    } 
    } 
    else 
    { 
    strMessage=LCRResponseCode.errorCodeToMessage(LCRResponseCode.PREFIX_GROUP_DOES_NOT_EXIST_ERROR); 
    debugLog(MODULE_NAME,"MESSAGE::: "+strMessage); 
    colErrorMessage.add(strMessage); 
    colInValideRecord.add(prefixGroupName); 
    debugLog(MODULE_NAME,"No Prefix Group is found."); 
    } 
    colDataValidation=new ArrayList(); 
    colDataValidation.add(colValidRecord); 
    colDataValidation.add(colInValideRecord); 
    colDataValidation.add(colErrorMessage); 
    resultObject.setResponseObject(colDataValidation);  
    resultObject.setResponseCode(LCRResponseCode.SUCCESS_RESPONSE_CODE); 

    } 
    else 
    { 
    debugLog(MODULE_NAME, "Unable to execute search query for in searchDestination() of LCRConfigurationSessionBean."); 
    resultObject.setResponseCode(LCRResponseCode.LCR_CONFIGURE_SEARCH_ERROR_EJB); 
    } 
    } 

} 
catch(Exception e) 
{ 
    e.printStackTrace(); 
    errorLog(MODULE_NAME, "exception in searchDestination() of LCRConfigurationSessionBean"); 
    resultObject.setResponseCode(LCRResponseCode.LCR_CONFIGURE_SEARCH_ERROR_EJB); 
    resultObject.setException(e); 
} 
return resultObject; 
} 

Dies ist der CodeWas ist der Wert von resultset, wenn die Abfrage keinen Datensatz zurückgibt?

+0

eine Neuformatierung Ihres Codes ist ein Muss, wenn Sie Antworten wünschen. für Formatierungshilfe, gehen Sie zu http://stackoverflow.com/editing-help – Jason

+0

@Jason: getan :) – Asaph

+0

Vanita: Sie haben 13 Fragen gestellt und 0 Antworten angenommen. Die Leute wollen dir nicht helfen, wenn du keine Antworten akzeptierst. –

Antwort

6

Nach the javadoc, Statement.executeQuery() kehrt nie null. Die Antwort lautet also ResultSet ohne Zeilen.

Sie können feststellen, dass das ResultSet leer ist, wenn next() beim ersten Aufruf false zurückgibt.

Sie können auch sagen, indem Sie die optionaleisAfterLast() Methode aufrufen. Wenn diese Methode unterstützt wird, erhalten Sie eine Antwort, ohne den Cursor als Nebeneffekt zu verwenden.


Ich habe keine Ahnung, was die Antwort für Ihren Code sein würde, da Sie eine execute Methode, deren Implementierung rufen Sie nicht zur Verfügung gestellt.

+0

Sie können ein 'ResultSet' ohne Zeilen erkennen, indem Sie' next() 'darauf aufrufen, und es wird' false' auch für die erste Zeile zurückgegeben. – Thilo

+0

@Thilo - danke. Ich habe das übernommen. –

0

ResultSet executeQuery (String sql) SQLException wirft Führt die gegebenen SQL Anweisung, die einen einzelnen ResultSet Objekt zurückgibt.

Parameter: SQL - eine SQL-Anweisung an die Datenbank gesendet werden, in der Regel eine statischen SQL-Anweisung SELECT

Returns: ein ResultSet-Objekt, das die Daten von der gegebenen Anfrage erzeugt wird, enthält; nie null

Wirft: SQLException - wenn eine Datenbank-Zugriffsfehler auftritt, diese Methode auf einem geschlossenen Statement oder die angegebene SQL-Anweisung erzeugt etwas anderes als ein einzelnes ResultSet genannt wird Objekt

auch können Sie es gerne tun:

if(resSet.last().getRow() > 0) 
{ 
resSet.first(); 
while(resSet.next()) 
{ 
    colValidRecord.add(resSet.getString("DESTINATIONGROUPID")); 
} 
} 
else 
{ 
//... 
Verwandte Themen