Java, gli EJB e le query SingleResult

document_java Java, gli EJB e le query SingleResult
Vediamo oggi una semplicissima funzione che spiega, in linguaggio java, come usare gli EJB ed effettuare una query di tipo SingleResult, ovvero una query che ritorni un solo risultato.

AGGIORNAMENTI
19/06/2011:
gestione delle eccezioni

Ecco la funzione:

public int myFunc()
{
    log.debug("myFunc:Begin:");       
    Object risultato = null;
    try{
        String qry = "...my query...";
        Query queryTmp = em.createQuery(qry);
        risultato = queryTmp.getSingleResult();    

    }

   catch(NoResultException nre)
   {
      //gestire il caso in cui non si trovano risultati
      risultato = null;
    }  

    catch(Exception e){
        log.debug(this.getClass().getName() + " " + e.getMessage(), e);
    }
    log.debug("myFunc:End:");
    return risultato;               
}

 

Questa funzione la potete usare come template standard, è una funzione completa di gestione degli errori e del log.

Da notare che, nel caso in cui non si trovano risultati, viene generata una NoResultException da gestire a seconda delle esigenze. Anche nel caso in cui, invece di un solo record, la query dovesse restituire più di un record, viene generata una apposita eccezione.

 

Buon lavoro!

We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.