Duvidas sobre consulta a banco de dados JPA Hibernate

0 respostas
adrianohardcore
Boa tarde , estou ainda engatinhando no java e estou com uma dúvida :Neste meu método :
public int CarregaNumCod() {
		Agenda agenda ;
		
		Integer serial,id = 0;
		Integer dserEst = 0;
		String dserPar = "AGD";		
		serial = dserRepo.findById(dserEst, dserPar);
		
		while (id == 0) { 
			serial ++;
			try {				
				agenda = manager.find(Agenda.class, serial);				
			    agenda.getAgdcod();			
			} catch (Exception e) {
				
				id = 1 ;
			}				
		}			
		return serial;
	}
Eu recebo um inteiro de
dserRepo.findById(dserEst, dserPar);
e com esse valor verifico se existe dentro de agenda a chave com o mesmo valor de serial , se existe , procuro o próximo até achar uma serial que não exista em Agenda . Esta funcionando , mas sei que esse meu código esta uma tremenda gambiarra , pois não estava conseguindo encontrar uma maneira de saber se uma consulta retornou dados ou não , ae tive que usar o Try , pois quando tento receber o valor da consulta que não retornou resultado ele dá erro , e esse erro para min é o suficiente para saber que aquele registro esta livre.Alguem pode me ajudar a melhorar este código , principalmente esta parte :
while (id == 0) { 
			serial ++;
			try {				
				agenda = manager.find(Agenda.class, serial);				
			    agenda.getAgdcod();			
			} catch (Exception e) {
				
				id = 1 ;
			}				
		}

Obrigado !!

Criado 9 de fevereiro de 2012
Respostas 0
Participantes 1