Ajuda com condição para salvar dados no banco

5 respostas
P

Como posso fazer para saber se o texto de um checkbox é do tipo String ou int.É que eu queria criar uma condição relacionada a isto para poder salvar os dados no banco tipo se o txt do check é do tipo string salva no campo nome da tabela se for do tipo int salva no numero.
Da para fazer esta condição?
Obrigada pela ajuda
:slight_smile:

5 Respostas

guilherme.dio

Use o Try/Catch

de modo:

no TRY você manda o codigo pegar o valor do checkbox como String

caso nao seja String, o erro será gerado, entao será lançado apra o CATCH

no CATCH você manda o codigo pegar o valor do checkbox como int

resolvido, você tem o valor do checkbox, sendo String ou int

guilherme.dio
int checkboxint=0;
String checkboxstring="";
try
{
   checkboxint=checkbox.getSelectedItem();
}
catch(Exception e)
{
   checkboxstring=checkbox.getSelectedItem();
}
P

ola guilherme.dio,
obrigada pelas respostas !
mas olha só eu tenho um grande problema para fazer isso

porque tanto os textos das checkboxes que são numeros quanto os que são palavras estão definidos como String :frowning:
Talvez eu não tenha me expressado bem … eu gostaria de saber como faço para salvar estes itens de forma correta no banco ja que cada palavra tem alguns numeros queria salvar de modo a não perder isto.
Obrigada pela ajuda

Zeed01

Bom dia Galera !

Oi paty_trind não entendi direito seu problema…

Você tem um checkBox onde pode ter as seguintes opções:

12345
Banana001
0001A

Então se o usuario selecionar a opção “12345” (qué um um inteiro) você quer que o sistema faça uma coisa e se ele escolher “Banana001” ele deve fazer outra coisa ?

Seguindo a linha do que o guilherme falou, quando vc tentar atribuir o “Banana001” a variavel checkBoxInt deve gerar o exception e vai para o catch que atribuirá “Banana001” a variavel checkBoxString.

Ou seja, no try você trata de um jeito (usuario selecionou um inteiro) e no catch de outro (usuario selecionou uma string).

Não entendi porque não irá funcionar…

[]s

P
oii eu entendi a lógica dele e não quis dizer que não funciona é que tipo no meu contexto eu acho q no meu contexto não daria muito certo pois implementando a lógica do colega meu codigo fica assim
b.addActionListener (new ActionListener (){   //salvar
			public void actionPerformed (ActionEvent e){  
				try{
					int checkboxint=0;
					String checkboxstring="";
					String registroCientifico = null;
					resultado=comando.executeQuery("select Id from 	aluno where nome='"+ nome +"' and rg='"+ registroGeral +"'");
					if(resultado.next())
						registroCientifico=resultado.getString(1);
					Component[] components = tela.getComponents();
					for (Component component : components) {
						if ( component instanceof JCheckBox ) {
							checkboxstring=component.getName();
						}
					}

				}
				catch(Exception ex)
				{
					checkboxint=checkbox.getSelectedItem();
					JOptionPane.showMessageDialog(null, "Ocorreu um erro\nOs dados não foram salvos!");
					ex.printStackTrace();
					
				}

			}});
ah e sem falar que o valor da checkboxstring é null:| obrigada pela ajuda:)
Criado 12 de abril de 2011
Ultima resposta 13 de abr. de 2011
Respostas 5
Participantes 3