Ho un'istruzione SQL che presumo restituirà una riga, perché sto passando la chiave primaria. Quindi le mie scelte sono aDevo Catch EmptyResultDataAccessException?
- Avvolgere il queryForObject in un try/catch, la cattura EmptyResultDataAccessException, e tornando nulla
- Modificare la chiamata a queryForList, e scartare l'elenco e (si spera) restituire il 1 ° elemento, o null.
Ho letto da qualche parte il cathing un EmptyResultDataAccessException, poiché estende l'eccezione di runtime, è una cattiva pratica.
Ma non riesco a vedere niente di sbagliato.
Mi sarebbe interessato a opinioni acustici
Se si passa una chiave primaria, come mai restituisce vuoto? –
Beh, non lo è, e non dovrebbe mai farlo. "Dovrebbe" essere la parola chiave qui. – EdgeCase