Seu eu tivesse um professor assim como vc na unicsul sp eu não teria tomado dp em técnicas de programação. Parabéns! Me inscrevi, comentei e dei jóia como agradecimento.
Muito obrigado pelos videos professor,eu sempre desejei aprender a programar, no momento eu não estou cursando nada, mas com essas aulas , tudo vai ficar mais fácil quando eu entrar em um curso .Valeu....
Desde já quero parabenizar pelas as aulas. Só apresenta algumas dúvidas vez por outra, o que é comum. Também estou com problemas nesses botões. Apresenta isso: "Erro de executaSQL! Erro: um resultado foi retornado quando nenhum era esperado."
Para mais detalhes: Isso ocorre nos dois que tentei (primeiro e último) conforme mostra a imagem do link abaixo: drive.google.com/file/d/0B56ecThlW8VjeFhHT3lXVkMyc2c/view?usp=sharing
Obrigado já consegui corrigir o erro: segue para quem não conseguiu também. colocar somente o codigo abaixo nos botões primeiro e ultimo. conecta.executaSQL("select * from estados order by id_estado ");
Estou muito feliz, pois estou concluindo meu curso de ADS e suas vídeo aulas estão me ajudando muito, que Deus possa lhe abençoar grandemente pela sua boa vontade e dedicação, e espero de alguma forma poder ajudar a outros do mesmo modo que você faz. Obrigado pela sua contribuição.
Cara, parabéns, passei algumas horas procurando um tutorial neste assunto. E incrivelmente consegui achar nas tuas aulas todo o conteúdo que estava procurando. Mais uma vez meus parabéns, muito bom o material.
Vamos lá! Deixa eu ver se entendi...você fez uma calculadora onde tem um botão que chama outro programa que você fez? Esse outro programa que você fez provavelmente está em um projeto diferente não está? Caso esteja você terá que colocar a classe do programa junto com os formulários para o projeto da calculadora, depois o processo para chamar esse programa ou formulário é o comum que sempre utilizamos nas vídeo aulas para chamar Forms e Classes! Espero ter ajudado qualquer duvida estamos aqui!
os meus parabens pelos videos esta a ser de grande ajuda para mim que sou estudante de programação, e eu estou seguindo fazendo as aulas mais apartir do NetBeans e quando uso os comandos dos botões first, last, previous e o next, com os comandos aqui mostrado no video esta a mim dar erros..... Digam-me a uma outra maneira de programar?
Olá Leandro que bom que gostou da vídeo aula!!! Pretendo programar todos.... porém os que tiverem códigos repetidos irei somente mostrar e recapitular para não ficar massante! Att! Obrigado pelo apoio!
Primeiramente gostaria de lhe dar os parabéns, pois esse canal esta show. Estou com um problema, pois, quero criar uma pesquisa para ele mostre todos os dados de uma tabela só que a pesquisa eu quero colocar de um jtexfild. Pode me ajudar?
cara suas video aulas são otimas! estou estudando e desenvolvendo meu TCC através delas e eu precisava de um código e vc fez ele de uma maneira muito simples! que é o código de consulta das setinhas e tal mas deu o seguinte erro!: " o nome da coluna id_estados nao foi encontrado neste ResultSet" oq eu faço?" OBS: nao aparentou erro nenhum no código!
existe sim brother :s eu voltei as video aulas do BD e refiz ele todo e o erro continua :s deve ser uma coisa simples que to me batendo kk isso é programação né :s enfim, vc disse que ia postar o link do BD! acho que isso me ajudaria kk o link pra baixar e tal
Bom dia, primeiramente parabens pelo canal. Estou com problemas nos botões next e previous, pelo que ví o resultSet está fechado, mas como abrir? Desde já agradeço!
o que quer dizer Result set fechado? tbem estou com problemas nos botoes previous e next, o resto uma beleza otima aula....o botão excluir tbem não exclui..
no meu aqui, quando chega no ultimo e quando eu clico para ir pro próximo mostra uma mensagem de erro, eu sei que é por que não tem dados cadastrados, mas o projeto ficaria melhor se não mostrasse essa mensagem quando não tiver mais nenhum dado cadastrado, só uma sugestão, parabéns pelas aulas, estão me ajudando muito, vlw mesmo,
Primeiro parabéns pelas Videoaulas, estou seguindo passo a passo e com certeza irei aprender muito com seus conhecimentos. Minha dúvida é quanto ao porque nos botões previous e next foi necessário retirar o conecta.executasql("select * from tbestados")? Obrigado mais uma vez.
Opa, boa tarde, Professor. Eu estou acompanhando seu canal, nas video aulas de JAVA Estou com um problema para ativar o "previous()" e o "next()" no JAVA, quando clico em um dos botões. Aparece o seguinte erro: jun 13, 2015 2:12:12 PM formularios.FrmEstado btnAnteriorActionPerformed GRAVE: null org.postgresql.util.PSQLException: ResultSet não está posicionado corretamente, talvez você precise chamar next. at org.postgresql.jdbc2.AbstractJdbc2ResultSet.checkResultSet(AbstractJdbc2ResultSet.java:2881) at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getInt(AbstractJdbc2ResultSet.java:2117) at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getInt(AbstractJdbc2ResultSet.java:2589) at formularios.FrmEstado.btnAnteriorActionPerformed(FrmEstado.java:369) at formularios.FrmEstado.access$600(FrmEstado.java:19) at formularios.FrmEstado$7.actionPerformed(FrmEstado.java:148) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.Component.processMouseEvent(Component.java:6525) at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) at java.awt.Component.processEvent(Component.java:6290) at java.awt.Container.processEvent(Container.java:2234) at java.awt.Component.dispatchEventImpl(Component.java:4881) at java.awt.Container.dispatchEventImpl(Container.java:2292) at java.awt.Component.dispatchEvent(Component.java:4703) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462) at java.awt.Container.dispatchEventImpl(Container.java:2278) at java.awt.Window.dispatchEventImpl(Window.java:2750) at java.awt.Component.dispatchEvent(Component.java:4703) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) Já tentei trocar de Driver, li todo o tutorial no " org.postgresql.Driver ", mas mesmo assim o problema persiste. Pode me ajudar por favor? Fico muito grato pela pro atividade de iniciar o curso de JAVA. Obrigado.
Quando vc adiciona outro estado, o botao de proximo ou o botao ultimo nao consegue setar o estado... acho que é porque o Statemtnt faz a pesquisa quando o programa eh aberto, eu fiz de outra forma aqui e deu certo... eu criei uma variavel statica para memorizar a linha da tabela: private void btnproximoActionPerformed(java.awt.event.ActionEvent evt) { if(linha==table.dados.size()-1){ linha = 0; } else { linha = linha+1; } String cod =(String) (table.getValueAt(linha, 0)); String nome_estado = (String) table.getValueAt(linha, 1); String sigla_estado = (String) table.getValueAt(linha, 2); txtcodigo.setText(cod); txtnome.setText(nome_estado); txtsigla.setText(sigla_estado); this.carregaTabela(); } private void btnanteriorActionPerformed(java.awt.event.ActionEvent evt) { if(linha==0){ linha= table.dados.size()-1; }else { linha = linha -1; } String cod =(String) (table.getValueAt(linha, 0)); String nome_estado = (String) table.getValueAt(linha, 1); String sigla_estado = (String) table.getValueAt(linha, 2); txtcodigo.setText(cod); txtnome.setText(nome_estado); txtsigla.setText(sigla_estado); this.carregaTabela(); }
cara eu tenho um painel administrativo mais num tenho o site, fais um video mostrando com puxar as informações do banco de dados. pq ai eu puxo as informções q o painel envia por banco de dados
cara, tenho acompanhado os videos e muito bom excelente conteudo otimo professor. ate o certo momento estava tudo ok, mas n consigo passar dos botoes de avançar. coloquei o codigo identico ao seu, porem apresenta erro: private void bPrimeiroActionPerformed(java.awt.event.ActionEvent evt) { try { conecta.executaSQL("select * from estados"); conecta.rs.first(); txtCodigo.setText(String.valueOf(conecta.rs.getInt("id_estados"))); txtNome.setText(conecta.rs.getString("nome_estado")); txtSigla.setText(conecta.rs.getString("sigla_estado")); } catch (SQLException ex) { System.out.println("Erro" + ex); } o erro é: Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at Formularios.Estados.bPrimeiroActionPerformed(Estados.java:350) at Formularios.Estados.access$600(Estados.java:20) at Formularios.Estados$7.actionPerformed(Estados.java:128)
Retira as linha conecta.executaSQL("select * from estados"); do botão e muda a linha conecta.rs.first(); para conecta.rs.next(); e para o botal anterior conecta.rs.previos(); testa ai e depois me fala!!!!!
Java Plugados Também não consegui. Se puder entre em contato comigo via email e eu encaminho meu projeto para voce testar (se puder). Talvez seja erro apenas na minha máquina. Agradeço sua atenção. Abraço andersonporcari@yahoo.com.br
Putz cara, me ajudou muito, obrigado, só uma Pergunta: Porque é necessário usar o seu método "executaSQL" Apenas nos botões Primeiro e Ultimo mas não nos botões próximo e anterior???
Professor foi necessário eu criar dois métodos excutaSQL que utiliza : stm= conn.createStatement(rs.TYPE_SCROLL_INSENSITIVE,rs.CONCUR_READ_ONLY); int rs = stm.executeUpdate(sql); e o executaSQLPesquisa : stm= conn.createStatement(rs.TYPE_SCROLL_INSENSITIVE,rs.CONCUR_READ_ONLY); rs = stm.executeQuery(sql); Foi preciso porque o executeQuery só funciona para Select e para alteração no banco precisa ser o executeUpdate , não entendi muito bem o porque ... e porque o seu funciona para ambos ??? Fiz igual ao do senhor porém estava dando erro ... Estou adorando as aulas muito boas , Parabéns!
professor boa noite, estava programando conforme suas instruções de repente apareceu um erro na linha de comando do botao anterior, aparece javadoc nao encontrado, travou todo meu projeto!!!!
Bom dia, To tendo problemas ao tentar trazer os dados do banco. Como tive que alterar o método executaSql para conseguir excluir, fiz novo método para consultas (conforme explicado na vídeo aula para excluir) e mesmo assim dá erro ao executar conforme abaixo. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at formularios.Estados.jbtPrimeiroActionPerformed(Estados.java:368) at formularios.Estados.access$500(Estados.java:19) at formularios.Estados$6.actionPerformed(Estados.java:138) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289) at java.awt.Component.processMouseEvent(Component.java:6535) at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) at java.awt.Component.processEvent(Component.java:6300) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4891) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4713) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) at java.awt.Container.dispatchEventImpl(Container.java:2280) at java.awt.Window.dispatchEventImpl(Window.java:2750) at java.awt.Component.dispatchEvent(Component.java:4713) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) Segue código. //método public void execultasqlCarregar(String sql){ try{ stm = con.createStatement( resultset.TYPE_SCROLL_INSENSITIVE, resultset.CONCUR_READ_ONLY ); stm.executeQuery(sql); } catch(SQLException ex){ JOptionPane.showMessageDialog(null,"Erro ao execultar instrução SQL. erro:" + ex.getMessage() + sql); } } //botão private void jbtPrimeiroActionPerformed(java.awt.event.ActionEvent evt) { try{ conecta.execultasqlCarregar("select *from estados");//aqui já tentei ordenar por id_estado e também não deu certo. conecta.resultset.first(); jtxtCodigo.setText(String.valueOf(conecta.resultset.getInt("ID_ESTADO"))); jtxtEstado.setText(conecta.resultset.getString("NOME_ESTADO")); jtxtSigla.setText(conecta.resultset.getString("SIGLA_ESTADO")); } catch(SQLException ex){ JOptionPane.showMessageDialog(rootPane, "Erro ao Carregar. " + ex.getMessage()); } } Como resolver???? Obrigada!
sim, nos testes consigo inserir e excluir os dados na tabela, só não consigo buscar para o form os dados do banco. Não tentei com os outros botões, somente com o primeiro. Acho que vou mudar o banco pra ver se o problema é o firebird.
Boa Noite.! Estou travando em uma programação onde preciso colocar os dados de um banco de dados a serem mostrados em um JLabel, teria como fazer isso? poderia me ajudar com um codigo base? Obrigado!
Em relação aos botões de navegação da tabela no formulário estados; em relação ao previous ou next se não retornar valor da tabela (esta estiver vazia por exemplo) o sistema dá erro, como resolver isso?
Primeiramente parabéns pela inciativa de ensino e obrigado. Estou usando o mysql, e estou recebendo o mesmo erro do anderson porcari. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException tentei seguir as suas recomendações de trocar para next e não obtive sucesso. O executaSQL parece estar funcionando, pois botei um joptionpane para me avisar se o método fosse construído. Sabe me dizer o que pode ser ? (antes desse passo de busca na tabela, tudo funcionou normal .. adição, remoção ..)
Acho que o problema se encontra no ResultSet, tentando conectar a tabela encontrei o mesmo erro, que é dado quando o resultset é acionado pela primeira vez... não sei se faz sentido.
finalmente encontrei a solução. Pode parecer que eu nem tinha tentado, mas fiquei 2 dias e depois que postei a pergunta aqui achei a solução. Caso alguém que esteja trabalhando com o mysql tenha o mesmo problema, pode comentar aqui que eu falo como resolvi.
Tiago Augusto Costa Pq não deixou o comentário de como arrumar esses problema,estou usando o mysql e acho que esse problema e do result,não consigo resolver
Ramon Dias Vaz public void executaSQL(String sql){ try { stm = conn.createStatement(rs.TYPE_SCROLL_INSENSITIVE,rs.CONCUR_READ_ONLY);// difere minusculo de maiusculo / ele e rolavel stm.executeQuery(sql); } catch (SQLException ex) { JOptionPane.showMessageDialog(null,"Erro no executaSQL"+ex.getMessage()); } }
professor boa tarde fiz tudo direitinho conforme vc ensinou, agora estou com probleminha nos id do codigo, ele nao estar mostrando. em ordem crescente exemplo codigo 1. em um estado. codigo 2 outro estado e assim por diante. no meu caso estar começando do codigo 24, depois codigo 25. o que eu faço professor? abraço
cara eu consigo puxar certinho mais to querendo fazer um uma lista mais eu coloquei 10 echos mais eles estão puxando o mesmo dado , como eu faço pra ele puxar por ordem
hehe como diz o ditado, político honesto é como Papai Noel: aparece em certas datas do ano, faz cena, engana os inocentes, mas na realidade sabemos que não existe.
Eu entendi dessa forma quando não ha registro no banco de dados ele retorna esse erro uma forma de resolver e colocando em "if" exemplo: if(conecta.rs.next()){ }else{ //no caso se nao tiver dados pode colocar //alguma opçao... }
Boa noite! Desculpe incomodar, tudo estava indo bem até o código para o botão "Primeiro", nem um erro. Mas apartir do código para o botão "Último" deu uma porção de erros . As opções dadas pelo netbeans é criar campo para os botões no FrmEstado, criar classe no pacote Formularios ou criar classe em Formularios.FrmEstado. Fiquei perdido até criei campos para os botões , mas os erros não sairam. Se alguém poder me ajudar eu agradeço.
É a segunda vez que faço esse códigos dos botões! porém que dar erro de resultset não está posicionado corretamente, talvez você precise chamar next. Esse erro ocorre quando eu chego no ultimo cadastro da tabela, tem como rever esse erro?
Ola professor, muito boas as suas aulas, tenho aprendido muito com seu metodo de ensino bem didatico, mas eu tenho um problema. meus metodos conecta.rs.previous() e conecta.rs.next() nao funcional com o botao, fiz identico ao seu exemplo, e nao funcionou, tentei fechar e abrir o netbeans(7.4) e mesmo assim, nao funcional, o que pode ser?Obrigado.
meu Frame FrmEstado t dando erro...abertura só pra leitura, não posso adicionar os botões, não posso fazer nada.tudo travado o leitura, exclui e salva normal.
Ao criar o código para mostrar os dados no formulário ao clicar no botão primeiro apresentou erro na linha de código do Jtextefield_codigo. A mensagem é a seguinte.: cannot find symbol symbol: variable id_estado location: class Frm_Estados Se puder ajudar.
os botões first. next... não funcionam, aperto no botão e não faz nada, olha os código: try { conect.executaSQL("select * from cliente"); conect.rs.first(); jTextFieldCodigo.setText(String.valueOf(conect.rs.getInt("id_cliente"))); jTextFieldNome.setText(conect.rs.getString("nome_cliente")); jTextFieldEndereco.setText(conect.rs.getString("endereco_cliente")); jTextPaneReferencia.setText(conect.rs.getString("pontoreferencia")); jFormattedTextFieldData.setText(conect.rs.getString("datanascimento")); } catch (SQLException ex) { JOptionPane.showMessageDialog(rootPane, "Erro ao mostrar dados! ERRO:"+ex); } na saída do netbeans aparece a seguinte mensagem: Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at VisalTelas.TelaCadastroCliente.jButtonPrimeiroActionPerformed(TelaCadastroCliente.java:372) at VisalTelas.TelaCadastroCliente.access$700(TelaCadastroCliente.java:10) at VisalTelas.TelaCadastroCliente$7.actionPerformed(TelaCadastroCliente.java:153) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348) alguém passou pelo mesmo problema.
Professor nao consigo trazer os dados ta aparecendo esse erro aqui Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at View.EditarCheque.jButton1ActionPerformed(EditarCheque.java:411) at View.EditarCheque.access$100(EditarCheque.java:17) at View.EditarCheque$2.actionPerformed(EditarCheque.java:109) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289) at java.awt.Component.processMouseEvent(Component.java:6505) at javax.swing.JComponent.processMouseEvent(JComponent.java:3321) at java.awt.Component.processEvent(Component.java:6270) at java.awt.Container.processEvent(Container.java:2229) at java.awt.Component.dispatchEventImpl(Component.java:4861) at java.awt.Container.dispatchEventImpl(Container.java:2287) at java.awt.Component.dispatchEvent(Component.java:4687) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) at java.awt.Container.dispatchEventImpl(Container.java:2273) at java.awt.Window.dispatchEventImpl(Window.java:2719) at java.awt.Component.dispatchEvent(Component.java:4687) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729) at java.awt.EventQueue.access$200(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:688) at java.awt.EventQueue$3.run(EventQueue.java:686) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87) at java.awt.EventQueue$4.run(EventQueue.java:702) at java.awt.EventQueue$4.run(EventQueue.java:700) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:699) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
E ai cara. Tb penei com o executaSQL. O problema tá na importação. Escreve do jeito q a video-aula ensina, e ao final, vc deleta todos os imports , ai a partitr da classe executaSQL vc pede para importa e tal. È meio "gambiarra", mas deu certo comigo. Valeu.
Vcs tão usando MySql? Se sim, eu tb penei, pois usei o Update para gravar por que o Query não funcionou e depois tive que usar o Query para consultar, aí funcionou tudo.
Olá pessoal encontrei um problema se estiver no último registro e clicar no botão próximo aparece uma mensagem de erro, informando que o ResultSet não está posicionado corremente, se eu estiver no primeiro registro e clicar no botão anterior aparece este mesmo erro. Podem me ajudar?
Descobri aqui, troquei a mensagem do catch dentro do previous() e do next() para: } catch (SQLException ex) { JOptionPane.showMessageDialog(rootPane, "Não há registros anteriores!"); }
outra soluçao seria voce quando clicar no proximo e ele estiver no ultimo registro, ele ir para o primeiro, e quando ele estiver no primeiro registro e vc clicar em anterior, ele ir para o ultimo... use um if no botaoanterior tipo: if(res.next){ ...codigo... } else { // se ele cair é pq nao existe registro anterior, btnultimoActionPerformed(evt); // aqui ele chama o metodo do botao ultimo }
Cara esse método ExecutaSQL so da problemas, faz de um outro jeito, quem ta assistindo suas aulas é pra aprender o básico, não tem muito conhecimento ainda.... Estou com erro: cannot issue select via executeupdate() Obrigado!
Essa forma que estou ensinando a a mais simples e fácil que conheço!!!Pelo erro que vc esta postando parece esta sendo passado parametros invalidos para a função executeUpdate().
Estou com esse problema.. não consegui achar o erro. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at view.TableListaContas.btnProximoActionPerformed(TableListaContas.java:249) at view.TableListaContas.access$100(TableListaContas.java:19)
Professor, estou iniciando o curso, e neste ponto encontrei uma mensagem e erro que gostaria que fosse explicado como resolver. Percebi que muitos buscam essa resposta nas pequisas do Google. Sua aulas são show, Obrigado!!! "ERRO:org.postgresql.util.PSQLException:ResultSet não está posicionado corretamente, talvez você precise chamar next" Esse erro acontece quando chega ao final do clicar em Anterior e do Previous. try { conecta.rs.previous(); jTextFieldCod.setText(String.valueOf(conecta.rs.getInt("id_estado"))); jTextFieldNome.setText(conecta.rs.getString("nome_estado")); jTextFieldSigla.setText(conecta.rs.getString("sigla_estado")); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Erro ao mostrar dados! ERRO: "+ex); } try { conecta.rs.next(); jTextFieldCod.setText(String.valueOf(conecta.rs.getInt("id_estado"))); jTextFieldNome.setText(conecta.rs.getString("nome_estado")); jTextFieldSigla.setText(conecta.rs.getString("sigla_estado")); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Erro ao mostrar dados! ERRO: "+ex); }
Esse erro ocorre porque o banco de dados chego ao fim dos registros! O que pode ser feito é uma nova condição para contornar essa msg de erro e mostrar uma mais elegante!!!
Cara nos meus campos TextField, que são para receber as siglas, nomes, e codigos, não estao mais funcionando, é dificil te explicar mas,pede pra criar campo.até agora estava funcionando. mas meus parabéns pelas video aulas. só agora mesmo que deu esse erro
tudo certo.
Que bom.
muito bom!
ja consegui consertar obrigado pessoal
Meus parabéns! Precisando estou as ordens!
Seu eu tivesse um professor assim como vc na unicsul sp eu não teria tomado dp em técnicas de programação. Parabéns! Me inscrevi, comentei e dei jóia como agradecimento.
+Wilda daee Muito obrigado!!!!
Muito gratificante, estas aulas são bem feitas e de facil aprendizagem ,nota 10
Muito obrigado.... que bom que esta gostando dos videos..... sua colaboração é de extrema importância e incentivo para continuar com este trabalho!
Muito obrigado pelos videos professor,eu sempre desejei aprender a programar, no momento eu não estou cursando nada, mas com essas aulas , tudo vai ficar mais fácil quando eu entrar em um curso .Valeu....
Com certeza as sua videoaulas são as melhores que já assistir. Muito top seu curso. Muito obrigado!!!
Desde já quero parabenizar pelas as aulas. Só apresenta algumas dúvidas vez por outra, o que é comum.
Também estou com problemas nesses botões.
Apresenta isso: "Erro de executaSQL! Erro: um resultado foi retornado quando nenhum era esperado."
Para mais detalhes: Isso ocorre nos dois que tentei (primeiro e último) conforme mostra a imagem do link abaixo:
drive.google.com/file/d/0B56ecThlW8VjeFhHT3lXVkMyc2c/view?usp=sharing
Obrigado já consegui corrigir o erro:
segue para quem não conseguiu também.
colocar somente o codigo abaixo nos botões primeiro e ultimo.
conecta.executaSQL("select * from estados order by id_estado ");
Excelente aula!!!! Tá de parabéns...
Estou muito feliz, pois estou concluindo meu curso de ADS e suas vídeo aulas estão me ajudando muito, que Deus possa lhe abençoar grandemente pela sua boa vontade e dedicação, e espero de alguma forma poder ajudar a outros do mesmo modo que você faz. Obrigado pela sua contribuição.
Cara, parabéns, passei algumas horas procurando um tutorial neste assunto. E incrivelmente consegui achar nas tuas aulas todo o conteúdo que estava procurando.
Mais uma vez meus parabéns, muito bom o material.
+Vinicius Medeiros Muito obrigado!!!!
show de bola !!! parabéns!! o Brasil precisa de gente como voce.
Vamos lá! Deixa eu ver se entendi...você fez uma calculadora onde tem um botão que chama outro programa que você fez? Esse outro programa que você fez provavelmente está em um projeto diferente não está? Caso esteja você terá que colocar a classe do programa junto com os formulários para o projeto da calculadora, depois o processo para chamar esse programa ou formulário é o comum que sempre utilizamos nas vídeo aulas para chamar Forms e Classes! Espero ter ajudado qualquer duvida estamos aqui!
to com problemas no botao anterior e proximo , naum funciona de jeito nenhum diz que é erro de resultset....as aulas saum muito boa parabens!
Os botões anterior(previous) e próximo(next) não tem que ter o comando sql ("select * from estados"), retira-os e testa novamente.
Parabéns!!!
os meus parabens pelos videos esta a ser de grande ajuda para mim que sou estudante de programação, e eu estou seguindo fazendo as aulas mais apartir do NetBeans e quando uso os comandos dos botões first, last, previous e o next, com os comandos aqui mostrado no video esta a mim dar erros..... Digam-me a uma outra maneira de programar?
Professor Já resolvi. Era uma linha de comando substituída no método ExecutaSQL
Olá Leandro que bom que gostou da vídeo aula!!!
Pretendo programar todos.... porém os que tiverem códigos repetidos irei somente mostrar e recapitular para não ficar massante!
Att!
Obrigado pelo apoio!
Primeiramente gostaria de lhe dar os parabéns, pois esse canal esta show.
Estou com um problema, pois, quero criar uma pesquisa para ele mostre todos os dados de uma tabela só que a pesquisa eu quero colocar de um jtexfild. Pode me ajudar?
+Thiago Elvas Utilize inner join na pesquisa!!!
+Java Plugados A parte do banco eu sei, só não sei a parte do Java. teria como me enviar como ficaria?
cara suas video aulas são otimas! estou estudando e desenvolvendo meu TCC através delas e eu precisava de um código e vc fez ele de uma maneira muito simples! que é o código de consulta das setinhas e tal mas deu o seguinte erro!:
" o nome da coluna id_estados nao foi encontrado neste ResultSet" oq eu faço?"
OBS: nao aparentou erro nenhum no código!
verifique o banco de dados se existe essa coluna id_estados! Acho que o erro está ai!
existe sim brother :s eu voltei as video aulas do BD e refiz ele todo e o erro continua :s deve ser uma coisa simples que to me batendo kk isso é programação né :s enfim, vc disse que ia postar o link do BD! acho que isso me ajudaria kk o link pra baixar e tal
Legal ja ta excluindo Obrigado..
Bom dia,
primeiramente parabens pelo canal.
Estou com problemas nos botões next e previous, pelo que ví o resultSet está fechado, mas como abrir?
Desde já agradeço!
Só abrir uma conexão e carregar informações no resultset!!!
Poderia exemplificar, tentei de tudo não deu certo.
Desde já agradeço!
Só seguir os passos da video aula nao tem segredo!!!
Só uma colaboração, as teclas de atalho para identação são (Alt+Shift+F)
Você pode fornecer o código fonte completo desse sistema que você fez nas video aulas? Ficarei muito grato
Alex Monteiro de Castro Silva Não fornecemos os códigos..... o intuito é que os inscritos vejam os videos e fação os codigos!!!!
entendi, sem problema intao :) muito boa suas video aulas. Parabens
Muito obrigado pela compreensão e por acompanhar o canal!!!
Obrigado pelas vídeos aulas estão sendo muito uteis, por favor tem como vc me passar sua biblioteca de ícones ?
o que quer dizer Result set fechado? tbem estou com problemas nos botoes previous e next, o resto uma beleza otima aula....o botão excluir tbem não exclui..
Quer dizer que nao é possivel ler dados no resultset!
no meu aqui, quando chega no ultimo e quando eu clico para ir pro próximo mostra uma mensagem de erro, eu sei que é por que não tem dados cadastrados, mas o projeto ficaria melhor se não mostrasse essa mensagem quando não tiver mais nenhum dado cadastrado, só uma sugestão, parabéns pelas aulas, estão me ajudando muito, vlw mesmo,
é amigo fica melhor quando se tira a mensagem de erro do catch. Boa dica!
Primeiro parabéns pelas Videoaulas, estou seguindo passo a passo e com certeza irei aprender muito com seus conhecimentos. Minha dúvida é quanto ao porque nos botões previous e next foi necessário retirar o conecta.executasql("select * from tbestados")? Obrigado mais uma vez.
Só para terminar , quando comento o código do botão Último desaparecem todos os erros. Vou fazer o código para os outros botões para ver.
Opa, boa tarde, Professor.
Eu estou acompanhando seu canal, nas video aulas de JAVA
Estou com um problema para ativar o "previous()" e o "next()" no JAVA, quando clico em um dos botões.
Aparece o seguinte erro:
jun 13, 2015 2:12:12 PM formularios.FrmEstado btnAnteriorActionPerformed
GRAVE: null
org.postgresql.util.PSQLException: ResultSet não está posicionado corretamente, talvez você precise chamar next.
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.checkResultSet(AbstractJdbc2ResultSet.java:2881)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getInt(AbstractJdbc2ResultSet.java:2117)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getInt(AbstractJdbc2ResultSet.java:2589)
at formularios.FrmEstado.btnAnteriorActionPerformed(FrmEstado.java:369)
at formularios.FrmEstado.access$600(FrmEstado.java:19)
at formularios.FrmEstado$7.actionPerformed(FrmEstado.java:148)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6525)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6290)
at java.awt.Container.processEvent(Container.java:2234)
at java.awt.Component.dispatchEventImpl(Component.java:4881)
at java.awt.Container.dispatchEventImpl(Container.java:2292)
at java.awt.Component.dispatchEvent(Component.java:4703)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
at java.awt.Container.dispatchEventImpl(Container.java:2278)
at java.awt.Window.dispatchEventImpl(Window.java:2750)
at java.awt.Component.dispatchEvent(Component.java:4703)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Já tentei trocar de Driver, li todo o tutorial no " org.postgresql.Driver ", mas mesmo assim o problema persiste.
Pode me ajudar por favor?
Fico muito grato pela pro atividade de iniciar o curso de JAVA.
Obrigado.
Cleber Pereira Recarrege o resultset antes do botoes!!!
Java Plugados
Onde estou errando??
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package formularios;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.ListSelectionModel;
import javax.swing.event.ListSelectionEvent;
import utilitarios.ConectaBanco;
import utilitarios.ModeloTabela;
/**
*
* @author CleberPereira
*/
public class FrmEstado extends javax.swing.JFrame {
ConectaBanco conecta = new ConectaBanco(); // Instância da classe de conexão
/**
* Creates new form FrmEstado
*/
public FrmEstado() {
initComponents();
conecta.conexao();// chamada do método de conexão
PreencherTabelas("select * from estados order by id_estado");
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
//
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
txtCod = new javax.swing.JTextField();
txtNome = new javax.swing.JTextField();
txtSgl = new javax.swing.JTextField();
btnNovo = new javax.swing.JButton();
btnEdit = new javax.swing.JButton();
btnSalva = new javax.swing.JButton();
btnDel = new javax.swing.JButton();
btnSair = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
tabelaEstado = new javax.swing.JTable();
btnPrimeiro = new javax.swing.JButton();
btnUltimo = new javax.swing.JButton();
btnAnterior = new javax.swing.JButton();
btnProximo = new javax.swing.JButton();
jLabel1 = new javax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Cadastro de Estados");
setResizable(false);
jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());
jLabel2.setText("Código:");
jLabel3.setText("Nome:");
jLabel4.setText("Sigla:");
txtCod.setDisabledTextColor(new java.awt.Color(0, 0, 0));
txtCod.setEnabled(false);
txtNome.setDisabledTextColor(new java.awt.Color(0, 0, 0));
txtNome.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtNomeActionPerformed(evt);
}
});
txtSgl.setDisabledTextColor(new java.awt.Color(0, 0, 0));
btnNovo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Add-256.png"))); // NOI18N
btnNovo.setToolTipText("Novo");
btnNovo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnNovoActionPerformed(evt);
}
});
btnEdit.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Edit-64.png"))); // NOI18N
btnEdit.setToolTipText("Alterar");
btnEdit.setEnabled(false);
btnEdit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnEditActionPerformed(evt);
}
});
btnSalva.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Save_64.png"))); // NOI18N
btnSalva.setToolTipText("Salvar");
btnSalva.setEnabled(false);
btnSalva.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnSalvaActionPerformed(evt);
}
});
btnDel.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Delete-32.png"))); // NOI18N
btnDel.setToolTipText("Deletar");
btnDel.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnDelActionPerformed(evt);
}
});
btnSair.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Gnome-Application-Exit-64.png"))); // NOI18N
btnSair.setToolTipText("Sair");
btnSair.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnSairActionPerformed(evt);
}
});
tabelaEstado.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{},
{},
{},
{}
},
new String [] {
}
));
jScrollPane1.setViewportView(tabelaEstado);
btnPrimeiro.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Arrow-double-left-48.png"))); // NOI18N
btnPrimeiro.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnPrimeiroActionPerformed(evt);
}
});
btnUltimo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Arrow-double-right-48.png"))); // NOI18N
btnUltimo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnUltimoActionPerformed(evt);
}
});
btnAnterior.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Arrow-left-48.png"))); // NOI18N
btnAnterior.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnAnteriorActionPerformed(evt);
}
});
btnProximo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Arrow-right-48.png"))); // NOI18N
btnProximo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnProximoActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 578, Short.MAX_VALUE)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jLabel2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(txtCod, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
.addContainerGap())
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jLabel3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(53, 53, 53)
.addComponent(jLabel4))
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(btnNovo, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(17, 17, 17)
.addComponent(btnSalva, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(btnEdit, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(btnDel, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(btnPrimeiro, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnUltimo, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnAnterior, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnProximo, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(txtSgl, javax.swing.GroupLayout.PREFERRED_SIZE, 56, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnSair)
.addGap(23, 23, 23))))))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(35, 35, 35)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(txtCod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4)
.addComponent(txtSgl, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(76, 76, 76)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(btnUltimo, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(btnAnterior, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(btnNovo)
.addComponent(btnEdit, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnSalva, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnDel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnSair, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addComponent(btnPrimeiro, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
.addComponent(btnProximo, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 133, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(31, Short.MAX_VALUE))
);
jLabel1.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
jLabel1.setForeground(new java.awt.Color(255, 0, 0));
jLabel1.setText("Formulário de cadastro de Estados");
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel1)
.addGap(154, 154, 154))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(5, 5, 5)
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
setSize(new java.awt.Dimension(638, 486));
setLocationRelativeTo(null);
}//
private void btnSalvaActionPerformed(java.awt.event.ActionEvent evt) {
try {
// TODO add your handling code here:
PreparedStatement pst = conecta.conn.prepareCall("INSERT INTO estados (nome_estado,sigla_estado) values(?,?)"); // passagem do SQL para inserção
pst.setString(1, txtNome.getText()); // passagem dos parâmetros
pst.setString(2, txtSgl.getText());
pst.execute();// executa a inserção.
JOptionPane.showMessageDialog(null, "Cadastrado com sucesso!");
PreencherTabelas("select * from estados order by id_estado");
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro na inserção
! ERRO: " + ex);
}
txtCod.setText("");
txtNome.setText("");
txtSgl.setText("");
btnNovo.setEnabled(true);
btnDel.setEnabled(true);
btnEdit.setEnabled(false);
btnSalva.setEnabled(false);
txtNome.setEnabled(false);
txtSgl.setEnabled(false);
}
private void btnDelActionPerformed(java.awt.event.ActionEvent evt) {
try {
// TODO add your handling code here:
// conecta.ExecutaSql("DELETE from estados where sigla_estado='"+txtSgl.getText()+"'");//chama o método da classe conecta banco para realizar a exclusão
// JOptionPane.showMessageDialog(rootPane, "Excluído com sucesso!");
PreparedStatement pst = conecta.conn.prepareStatement("delete from estados where sigla_estado=?");
pst.setString(1, txtSgl.getText());
pst.execute();
JOptionPane.showMessageDialog(rootPane, "Excluído com sucesso!");
PreencherTabelas("select * from estados order by id_estado");
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao Deletar!
ERRO: " + ex);
}
txtCod.setText("");
txtNome.setText("");
txtSgl.setText("");
btnNovo.setEnabled(true);
btnDel.setEnabled(true);
btnEdit.setEnabled(false);
btnSalva.setEnabled(false);
txtNome.setEnabled(true);
txtSgl.setEnabled(true);
}
private void btnSairActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
dispose();
}
private void btnNovoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
txtCod.setText("");
txtNome.setText("");
txtSgl.setText("");
txtNome.setEnabled(true);
txtSgl.setEnabled(true);
btnEdit.setEnabled(true);
btnDel.setEnabled(true);
btnSalva.setEnabled(true);
btnNovo.setEnabled(false);
}
private void btnPrimeiroActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
btnEdit.setEnabled(true);
btnDel.setEnabled(true);
txtNome.setEnabled(true);
txtSgl.setEnabled(true);
try {
conecta.ExecutaSql("select * from estados");
conecta.rs.first();
txtCod.setText(Integer.toString(conecta.rs.getInt("id_estado")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSgl.setText(conecta.rs.getString("sigla_estado"));
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao Mostrar dados!
ERRO: " + ex);
}
}
private void btnUltimoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
btnEdit.setEnabled(true);
btnDel.setEnabled(true);
txtNome.setEnabled(true);
txtSgl.setEnabled(true);
try {
conecta.ExecutaSql("select * from estados");
conecta.rs.last();
txtCod.setText(Integer.toString(conecta.rs.getInt("id_estado")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSgl.setText(conecta.rs.getString("sigla_estado"));
} catch (SQLException ex) {
Logger.getLogger(FrmEstado.class.getName()).log(Level.SEVERE, null, ex);
}
}
private void btnAnteriorActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try {
conecta.ExecutaSql("select * from estados");
conecta.rs.previous();
txtCod.setText(Integer.toString(conecta.rs.getInt("id_estado")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSgl.setText(conecta.rs.getString("sigla_estado"));
} catch (SQLException ex) {
Logger.getLogger(FrmEstado.class.getName()).log(Level.SEVERE, null, ex);
}
btnEdit.setEnabled(true);
btnDel.setEnabled(true);
txtNome.setEnabled(true);
txtSgl.setEnabled(true);
}
private void btnProximoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try {
conecta.ExecutaSql("select * from estados");
conecta.rs.next();
txtCod.setText(Integer.toString(conecta.rs.getInt("id_estado")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSgl.setText(conecta.rs.getString("sigla_estado"));
} catch (SQLException ex) {
Logger.getLogger(FrmEstado.class.getName()).log(Level.SEVERE, null, ex);
}
btnEdit.setEnabled(true);
btnDel.setEnabled(true);
txtNome.setEnabled(true);
txtSgl.setEnabled(true);
}
private void btnEditActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
btnEdit.setEnabled(true);
btnDel.setEnabled(true);
btnSalva.setEnabled(true);
try {
PreparedStatement pst = conecta.conn.prepareStatement("update estados set nome_estado=?, sigla_estado=? where id_estado=?");
pst.setString(1, txtNome.getText());
pst.setString(2, txtSgl.getText());
pst.setInt(3, Integer.parseInt(txtCod.getText()));
pst.execute();
JOptionPane.showMessageDialog(rootPane, "Alterado com sucesso!");
PreencherTabelas("select * from estados order by id_estado");
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao Alterar!
ERRO: " + ex);
}
}
private void txtNomeActionPerformed(java.awt.event.ActionEvent evt) {
}
public void PreencherTabelas(String SQL) {
ArrayList dados = new ArrayList();
String[] Colunas = new String[]{"ID", "Nome", "Sigla"};
conecta.ExecutaSql(SQL);
try {
conecta.rs.first();
do {
dados.add(new Object[]{conecta.rs.getInt("id_estado"),conecta.rs.getString("nome_estado"),conecta.rs.getString("sigla_estado")});
} while (conecta.rs.next());
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao preencher o ArrayList!
ERRO: " + ex);
}
ModeloTabela modelo = new ModeloTabela(dados, Colunas);
tabelaEstado.setModel(modelo);
tabelaEstado.getColumnModel().getColumn(0).setPreferredWidth(135);
tabelaEstado.getColumnModel().getColumn(0).setResizable(false);
tabelaEstado.getColumnModel().getColumn(1).setPreferredWidth(280);
tabelaEstado.getColumnModel().getColumn(1).setResizable(false);
tabelaEstado.getColumnModel().getColumn(2).setPreferredWidth(135);
tabelaEstado.getColumnModel().getColumn(2).setResizable(false);
tabelaEstado.getTableHeader().setReorderingAllowed(false);
tabelaEstado.setAutoResizeMode(tabelaEstado.AUTO_RESIZE_OFF);
tabelaEstado.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(FrmEstado.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(FrmEstado.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(FrmEstado.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(FrmEstado.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new FrmEstado().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton btnAnterior;
private javax.swing.JButton btnDel;
private javax.swing.JButton btnEdit;
private javax.swing.JButton btnNovo;
private javax.swing.JButton btnPrimeiro;
private javax.swing.JButton btnProximo;
private javax.swing.JButton btnSair;
private javax.swing.JButton btnSalva;
private javax.swing.JButton btnUltimo;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JPanel jPanel1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable tabelaEstado;
private javax.swing.JTextField txtCod;
private javax.swing.JTextField txtNome;
private javax.swing.JTextField txtSgl;
// End of variables declaration
}
Envie o projeto e o banco de dados para o email javaplugados@gmail.com!!!!
Quando vc adiciona outro estado, o botao de proximo ou o botao ultimo nao consegue setar o estado... acho que é porque o Statemtnt faz a pesquisa quando o programa eh aberto,
eu fiz de outra forma aqui e deu certo... eu criei uma variavel statica para memorizar a linha da tabela:
private void btnproximoActionPerformed(java.awt.event.ActionEvent evt) {
if(linha==table.dados.size()-1){
linha = 0;
} else {
linha = linha+1;
}
String cod =(String) (table.getValueAt(linha, 0));
String nome_estado = (String) table.getValueAt(linha, 1);
String sigla_estado = (String) table.getValueAt(linha, 2);
txtcodigo.setText(cod);
txtnome.setText(nome_estado);
txtsigla.setText(sigla_estado);
this.carregaTabela();
}
private void btnanteriorActionPerformed(java.awt.event.ActionEvent evt) {
if(linha==0){
linha= table.dados.size()-1;
}else {
linha = linha -1;
}
String cod =(String) (table.getValueAt(linha, 0));
String nome_estado = (String) table.getValueAt(linha, 1);
String sigla_estado = (String) table.getValueAt(linha, 2);
txtcodigo.setText(cod);
txtnome.setText(nome_estado);
txtsigla.setText(sigla_estado);
this.carregaTabela();
}
cara eu tenho um painel administrativo mais num tenho o site, fais um video mostrando com puxar as informações do banco de dados. pq ai eu puxo as informções q o painel envia por banco de dados
Já mostrei nas video aulas como fazer isso.... mas a maneira como faz em um sistema Java Web é um pouco diferente!
cara, tenho acompanhado os videos e muito bom excelente conteudo otimo professor.
ate o certo momento estava tudo ok, mas n consigo passar dos botoes de avançar.
coloquei o codigo identico ao seu, porem apresenta erro:
private void bPrimeiroActionPerformed(java.awt.event.ActionEvent evt) {
try {
conecta.executaSQL("select * from estados");
conecta.rs.first();
txtCodigo.setText(String.valueOf(conecta.rs.getInt("id_estados")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSigla.setText(conecta.rs.getString("sigla_estado"));
} catch (SQLException ex) {
System.out.println("Erro" + ex);
}
o erro é:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Formularios.Estados.bPrimeiroActionPerformed(Estados.java:350)
at Formularios.Estados.access$600(Estados.java:20)
at Formularios.Estados$7.actionPerformed(Estados.java:128)
Você esta realizando a conexão com o banco de dados.... no inicio do form?
Sim até agora esta tudo correto. Consigo incluir e excluir linhas do BD mas a tecla avançar ta me matando. Não vai de jeito nenhum ;(
Retira as linha conecta.executaSQL("select * from estados"); do botão e muda a linha conecta.rs.first(); para conecta.rs.next(); e para o botal anterior conecta.rs.previos(); testa ai e depois me fala!!!!!
Java Plugados Também não consegui. Se puder entre em contato comigo via email e eu encaminho meu projeto para voce testar (se puder). Talvez seja erro apenas na minha máquina.
Agradeço sua atenção.
Abraço
andersonporcari@yahoo.com.br
@@teliiz Os botões anterior(previous) e próximo(next) não tem que ter o comando sql ("select * from estados"), retira-os e testa novamente.
professor, tem como me mandar o código do método "executaSQL" da classe de conexão com o BD?
O botão next ele volta para o primeiro e nao avançar para baixo como resolvo?(PF AJUDA EU )
Putz cara, me ajudou muito, obrigado, só uma Pergunta:
Porque é necessário usar o seu método "executaSQL" Apenas nos botões Primeiro e Ultimo mas não nos botões próximo e anterior???
+Ralph Andrade Porque eles já trabalham com o resultset que foi previamente carregado!!!
Problema resolvido meus botões estão funcionando, qdo copiei e colei, foi uma linha de codigo a mais. somente o botão exluir não esta funcionando
Professor foi necessário eu criar dois métodos excutaSQL que utiliza : stm= conn.createStatement(rs.TYPE_SCROLL_INSENSITIVE,rs.CONCUR_READ_ONLY);
int rs = stm.executeUpdate(sql);
e o executaSQLPesquisa :
stm= conn.createStatement(rs.TYPE_SCROLL_INSENSITIVE,rs.CONCUR_READ_ONLY);
rs = stm.executeQuery(sql);
Foi preciso porque o executeQuery só funciona para Select e para alteração no banco precisa ser o executeUpdate , não entendi muito bem o porque ... e porque o seu funciona para ambos ??? Fiz igual ao do senhor porém estava dando erro ... Estou adorando as aulas muito boas , Parabéns!
Pode me mandar o seu códio no e-mail javaplugados@gmail.com vou analisar o que está acontendo ! Obrigado!!!
@@devv_nerd Vou mandar hoje a noite ! Seu curso é fantástico , estou gostando muito , obrigado pela atenção!
@@michaelfagundes4639 Muito obrigado! Vou analisar o código enviado!! Obrigado
se eu fosse usar o PreparedStatement, no botao jButton5PrimeiroActionPerformed
como seria?
achei interessante deixar os botões do meu projeto de tal forma:
private void btnPrimeiroActionPerformed(java.awt.event.ActionEvent evt) {
try {
conecta.executaSQL("select * from estados");
conecta.rs.first();
txtCod.setText(String.valueOf(conecta.rs.getInt("id_estado")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSigla.setText(conecta.rs.getString("sigla_estado"));
btnUltimo.setEnabled(true);
btnProximo.setEnabled(true);
btnPrimeiro.setEnabled(false);
btnAnterior.setEnabled(false);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(rootPane,"Erro ao exibir dados!
Erro: "+ex);
}
}
private void btnUltimoActionPerformed(java.awt.event.ActionEvent evt) {
try {
conecta.executaSQL("select * from estados");
conecta.rs.last();
txtCod.setText(String.valueOf(conecta.rs.getInt("id_estado")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSigla.setText(conecta.rs.getString("sigla_estado"));
btnPrimeiro.setEnabled(true);
btnAnterior.setEnabled(true);
btnProximo.setEnabled(false);
btnUltimo.setEnabled(false);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(rootPane,"Erro ao exibir dados!
Erro: "+ex);
}
}
private void btnAnteriorActionPerformed(java.awt.event.ActionEvent evt) {
try {
conecta.rs.previous();
txtCod.setText(String.valueOf(conecta.rs.getInt("id_estado")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSigla.setText(conecta.rs.getString("sigla_estado"));
btnPrimeiro.setEnabled(true);
btnUltimo.setEnabled(true);
btnProximo.setEnabled(true);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(rootPane,"Este é o Primeiro registro");
btnAnterior.setEnabled(false);
}
}
private void btnProximoActionPerformed(java.awt.event.ActionEvent evt) {
try {
conecta.rs.next();
txtCod.setText(String.valueOf(conecta.rs.getInt("id_estado")));
txtNome.setText(conecta.rs.getString("nome_estado"));
txtSigla.setText(conecta.rs.getString("sigla_estado"));
btnPrimeiro.setEnabled(true);
btnUltimo.setEnabled(true);
btnAnterior.setEnabled(true);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(rootPane,"Este é o ultimo registro!");
btnProximo.setEnabled(false);
}
professor boa noite, estava programando conforme suas instruções de repente apareceu um erro na linha de comando do botao anterior, aparece javadoc nao encontrado, travou todo meu projeto!!!!
Bom dia,
To tendo problemas ao tentar trazer os dados do banco.
Como tive que alterar o método executaSql para conseguir excluir, fiz novo método para consultas (conforme explicado na vídeo aula para excluir) e mesmo assim dá erro ao executar conforme abaixo.
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at formularios.Estados.jbtPrimeiroActionPerformed(Estados.java:368)
at formularios.Estados.access$500(Estados.java:19)
at formularios.Estados$6.actionPerformed(Estados.java:138)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6535)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6300)
at java.awt.Container.processEvent(Container.java:2236)
at java.awt.Component.dispatchEventImpl(Component.java:4891)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Component.dispatchEvent(Component.java:4713)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
at java.awt.Container.dispatchEventImpl(Container.java:2280)
at java.awt.Window.dispatchEventImpl(Window.java:2750)
at java.awt.Component.dispatchEvent(Component.java:4713)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Segue código.
//método
public void execultasqlCarregar(String sql){
try{
stm = con.createStatement( resultset.TYPE_SCROLL_INSENSITIVE, resultset.CONCUR_READ_ONLY );
stm.executeQuery(sql);
}
catch(SQLException ex){
JOptionPane.showMessageDialog(null,"Erro ao execultar instrução SQL.
erro:" + ex.getMessage() + sql);
}
}
//botão
private void jbtPrimeiroActionPerformed(java.awt.event.ActionEvent evt) {
try{
conecta.execultasqlCarregar("select *from estados");//aqui já tentei ordenar por id_estado e também não deu certo.
conecta.resultset.first();
jtxtCodigo.setText(String.valueOf(conecta.resultset.getInt("ID_ESTADO")));
jtxtEstado.setText(conecta.resultset.getString("NOME_ESTADO"));
jtxtSigla.setText(conecta.resultset.getString("SIGLA_ESTADO"));
}
catch(SQLException ex){
JOptionPane.showMessageDialog(rootPane, "Erro ao Carregar.
" + ex.getMessage());
}
}
Como resolver????
Obrigada!
+Angra Oliveira Tudo indica que não existem dados para serem mostrados!!! Tem informações cadastradas no banco?
Sim, tenho 06 estados cadastrados no banco.
Muito estranho a conexão esta aberta?
sim, nos testes consigo inserir e excluir os dados na tabela, só não consigo buscar para o form os dados do banco. Não tentei com os outros botões, somente com o primeiro. Acho que vou mudar o banco pra ver se o problema é o firebird.
faça o teste com os outros botoes!!!
quando chegar no último dado e aperta o botão próximo, dá um erro. Como resolver?
é só retirar a mensagem do catch
Porque meu botão excluir esta esse erro: Can not issue data manipulation statements with executeQuery();...?
Parece que não está sendo passado dados como parâmetro no SQL para realizar a exclusão!
Boa Noite.!
Estou travando em uma programação onde preciso colocar os dados de um banco de dados a serem mostrados em um JLabel, teria como fazer isso? poderia me ajudar com um codigo base?
Obrigado!
Em relação aos botões de navegação da tabela no formulário estados;
em relação ao previous ou next se não retornar valor da tabela (esta estiver vazia por exemplo) o sistema dá erro,
como resolver isso?
Primeiramente parabéns pela inciativa de ensino e obrigado.
Estou usando o mysql, e estou recebendo o mesmo erro do anderson porcari.
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
tentei seguir as suas recomendações de trocar para next e não obtive sucesso.
O executaSQL parece estar funcionando, pois botei um joptionpane para me avisar se o método fosse construído.
Sabe me dizer o que pode ser ?
(antes desse passo de busca na tabela, tudo funcionou normal .. adição, remoção ..)
Acho que o problema se encontra no ResultSet, tentando conectar a tabela encontrei o mesmo erro, que é dado quando o resultset é acionado pela primeira vez... não sei se faz sentido.
finalmente encontrei a solução. Pode parecer que eu nem tinha tentado, mas fiquei 2 dias e depois que postei a pergunta aqui achei a solução.
Caso alguém que esteja trabalhando com o mysql tenha o mesmo problema, pode comentar aqui que eu falo como resolvi.
Tiago Augusto Costa Thiago esotu com o mesmo problema pode explicar ?
Tiago Augusto Costa Pq não deixou o comentário de como arrumar esses problema,estou usando o mysql e acho que esse problema e do result,não consigo resolver
ao percorrer os dados não está aparecendo em ordem quendo clico em proximo , como faço para corrigir este problema???
como eu faco pra reiniciar o id pois apaguei alguns dados da tabela e ficou contando do 11 em diante?????
O meu netbeAns não reconhece o comando. "Conecta." Porquê!?
Esse comando é referencia a um método criado na classe conecta banco!!!
Ramon Dias Vaz public void executaSQL(String sql){ try { stm = conn.createStatement(rs.TYPE_SCROLL_INSENSITIVE,rs.CONCUR_READ_ONLY);// difere minusculo de maiusculo / ele e rolavel stm.executeQuery(sql); } catch (SQLException ex) { JOptionPane.showMessageDialog(null,"Erro no executaSQL"+ex.getMessage()); } }
aonde colocar esse codigo
professor boa tarde fiz tudo direitinho conforme vc ensinou, agora estou com probleminha nos id do codigo, ele nao estar mostrando. em ordem crescente exemplo codigo 1. em um estado. codigo 2 outro estado e assim por diante. no meu caso estar começando do codigo 24, depois codigo 25. o que eu faço professor? abraço
melquisedeque muniz araujo Coloque um order by no SQL
cara eu consigo puxar certinho mais to querendo fazer um uma lista mais eu coloquei 10 echos mais eles estão puxando o mesmo dado , como eu faço pra ele puxar por ordem
Se candidata pra presidente que eu voto em você!!!
KKKKKKKKKKKKKKKKKK........ Se a politica em nosso pais fosse coisa mais séria e com menos corrupção..... poderia até pensar nessa possibilidade!!! RS
hehe como diz o ditado, político honesto é como Papai Noel: aparece em certas datas do ano, faz cena, engana os inocentes, mas na realidade sabemos que não existe.
Isso é uma verdade!!!
Meus dados inseridos no PostgreSQL não aparecem, aparece apenas o código do estado. Como resolvo isso?
Qual erro está sendo apresentado?
O formulário de cadastro simplesmente não abre, e no NetBeans, informa todos esses erros
fiz o que vc tinha me falado mais aparece o seguinte erro:
resultset nao esta posicionado corretamente, talvez precise chamar next.
o que eu faco?
+Lucas Santos Recaregue o resultset antes de realizar o procedimento que desencadeia o erro!!!
+Java Plugados Recarregar como assim? no meu quando eu chego no ultimo registro, e clico pra o próximo da esse erro bem ai
Eu entendi dessa forma quando não ha registro no banco de dados ele retorna esse erro uma forma de resolver e colocando em "if" exemplo:
if(conecta.rs.next()){
}else{
//no caso se nao tiver dados pode colocar //alguma opçao...
}
Boa noite! Desculpe incomodar, tudo estava indo bem até o código para o botão "Primeiro", nem um erro. Mas apartir do código para o botão "Último" deu uma porção de erros . As opções dadas pelo netbeans é criar campo para os botões no FrmEstado, criar classe no pacote Formularios ou criar classe em Formularios.FrmEstado. Fiquei perdido até criei campos para os botões , mas os erros não sairam. Se alguém poder me ajudar eu agradeço.
É a segunda vez que faço esse códigos dos botões! porém que dar erro de resultset não está posicionado corretamente, talvez você precise chamar next. Esse erro ocorre quando eu chego no ultimo cadastro da tabela, tem como rever esse erro?
Quantos registros estão sendo utilizados para o ResultSet? Você conferiu os códigos? Os botões anterior e próximo estão funcionando corretamente?
Ola professor, muito boas as suas aulas, tenho aprendido muito com seu metodo de ensino bem didatico, mas eu tenho um problema. meus metodos conecta.rs.previous() e conecta.rs.next() nao funcional com o botao, fiz identico ao seu exemplo, e nao funcionou, tentei fechar e abrir o netbeans(7.4) e mesmo assim, nao funcional, o que pode ser?Obrigado.
Geralmente da esse erro porque o resultset esta fechado!!!!
Os botões anterior(previous) e próximo(next) não tem que ter o comando sql ("select * from estados"), retira-os e testa novamente.
valor invalido tipo int São Paulo dar esse erro
Acredito que o erro ocorra por conta dos acentos"!!!
meu Frame FrmEstado t dando erro...abertura só pra leitura, não posso adicionar os botões, não posso fazer nada.tudo travado o leitura, exclui e salva normal.
Acredito que a propriedade enable dos botoes estejam ativadas por isso nada responde.... de uma verificada!
Ao criar o código para mostrar os dados no formulário ao clicar no botão primeiro apresentou erro na linha de código do Jtextefield_codigo.
A mensagem é a seguinte.:
cannot find symbol
symbol: variable id_estado
location: class Frm_Estados
Se puder ajudar.
O meu deu um monte de erros em todos os botões, tentei localizar o porque, mas sem sucesso. Por favor me ajude!
Quais erros?
os botões first. next... não funcionam, aperto no botão e não faz nada, olha os código:
try {
conect.executaSQL("select * from cliente");
conect.rs.first();
jTextFieldCodigo.setText(String.valueOf(conect.rs.getInt("id_cliente")));
jTextFieldNome.setText(conect.rs.getString("nome_cliente"));
jTextFieldEndereco.setText(conect.rs.getString("endereco_cliente"));
jTextPaneReferencia.setText(conect.rs.getString("pontoreferencia"));
jFormattedTextFieldData.setText(conect.rs.getString("datanascimento"));
} catch (SQLException ex) {
JOptionPane.showMessageDialog(rootPane, "Erro ao mostrar dados!
ERRO:"+ex);
}
na saída do netbeans aparece a seguinte mensagem:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at VisalTelas.TelaCadastroCliente.jButtonPrimeiroActionPerformed(TelaCadastroCliente.java:372)
at VisalTelas.TelaCadastroCliente.access$700(TelaCadastroCliente.java:10)
at VisalTelas.TelaCadastroCliente$7.actionPerformed(TelaCadastroCliente.java:153)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
alguém passou pelo mesmo problema.
obrigando pessoal, encontrei o erro.
não tinha colocado : rs = stm.executeQuery(sql);
Mamoel, onde coloca o rs = stm.executeQuery(sql);?
Professor nao consigo trazer os dados ta aparecendo esse erro aqui
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at View.EditarCheque.jButton1ActionPerformed(EditarCheque.java:411)
at View.EditarCheque.access$100(EditarCheque.java:17)
at View.EditarCheque$2.actionPerformed(EditarCheque.java:109)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:702)
at java.awt.EventQueue$4.run(EventQueue.java:700)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
eu to travado nessa parte.... =/
Cleber Pereira Q parte?
se tiver como o senhor acessar meu pc para visualizar, entre em contato por favor!!!
Eu tentei, mas está dando erro no executaSQL. e não sei resolver, como eu faço para resolver esse erro?
Qual erro?
E ai cara.
Tb penei com o executaSQL.
O problema tá na importação.
Escreve do jeito q a video-aula ensina, e ao final, vc deleta todos os imports , ai a partitr da classe executaSQL vc pede para importa e tal.
È meio "gambiarra", mas deu certo comigo.
Valeu.
Vcs tão usando MySql?
Se sim, eu tb penei, pois usei o Update para gravar por que o Query não funcionou e depois tive que usar o Query para consultar, aí funcionou tudo.
Olá pessoal encontrei um problema se estiver no último registro e clicar no botão próximo aparece uma mensagem de erro, informando que o ResultSet não está posicionado corremente, se eu estiver no primeiro registro e clicar no botão anterior aparece este mesmo erro. Podem me ajudar?
Descobri aqui, troquei a mensagem do catch dentro do previous() e do next() para:
} catch (SQLException ex) {
JOptionPane.showMessageDialog(rootPane, "Não há registros anteriores!");
}
O programa apresenta essa msg pq o resultset esta na ultima posição e nao tem mais registro, so tratar essa msg!!!
outra soluçao seria voce quando clicar no proximo e ele estiver no ultimo registro, ele ir para o primeiro, e quando ele estiver no primeiro registro e vc clicar em anterior, ele ir para o ultimo...
use um if no botaoanterior tipo:
if(res.next){
...codigo... } else { // se ele cair é pq nao existe registro anterior,
btnultimoActionPerformed(evt); // aqui ele chama o metodo do botao ultimo
}
Boa noite professor, nessa parte o programa deu erro :/
Poderia dar uma olhada para mim por favor?
Qual o erro?
Cara esse método ExecutaSQL so da problemas, faz de um outro jeito, quem ta assistindo suas aulas é pra aprender o básico, não tem muito conhecimento ainda....
Estou com erro: cannot issue select via executeupdate()
Obrigado!
Essa forma que estou ensinando a a mais simples e fácil que conheço!!!Pelo erro que vc esta postando parece esta sendo passado parametros invalidos para a função executeUpdate().
Consegui resolver colocando "rs = stm.executeQuery(sql);"
Valeu obrigado, suas aulas de mais!
Estou com esse problema.. não consegui achar o erro.
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at view.TableListaContas.btnProximoActionPerformed(TableListaContas.java:249)
at view.TableListaContas.access$100(TableListaContas.java:19)
Professor, estou iniciando o curso, e neste ponto encontrei uma mensagem e erro que gostaria que fosse explicado como resolver. Percebi que muitos buscam essa resposta nas pequisas do Google.
Sua aulas são show, Obrigado!!!
"ERRO:org.postgresql.util.PSQLException:ResultSet não está posicionado corretamente, talvez você precise chamar next"
Esse erro acontece quando chega ao final do clicar em Anterior e do Previous.
try {
conecta.rs.previous();
jTextFieldCod.setText(String.valueOf(conecta.rs.getInt("id_estado")));
jTextFieldNome.setText(conecta.rs.getString("nome_estado"));
jTextFieldSigla.setText(conecta.rs.getString("sigla_estado"));
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao mostrar dados!
ERRO: "+ex);
}
try {
conecta.rs.next();
jTextFieldCod.setText(String.valueOf(conecta.rs.getInt("id_estado")));
jTextFieldNome.setText(conecta.rs.getString("nome_estado"));
jTextFieldSigla.setText(conecta.rs.getString("sigla_estado"));
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao mostrar dados!
ERRO: "+ex);
}
Esse erro ocorre porque o banco de dados chego ao fim dos registros! O que pode ser feito é uma nova condição para contornar essa msg de erro e mostrar uma mais elegante!!!
O meu funciona, porem ele corta as letras na hora de mostrar o resultado
Como na imagem que mandei: puu.sh/nqzIW/556fddf9b3.png
+DeadCat! ja resolvi ;)
fudeo tudo meu programa
+Vitor da Silva
O que aconteceu?
Cara nos meus campos TextField, que são para receber as siglas, nomes, e codigos, não estao mais funcionando, é dificil te explicar mas,pede pra criar campo.até agora estava funcionando. mas meus parabéns pelas video aulas. só agora mesmo que deu esse erro
+Vitor da Silva Esses campos são do jFormatedTextField?
Concertado! obrigado!
Estou amando as aulas..Parabens!!
Gente nesse site eu achei varios icones gratuitos que podemos baixar do tamaho qu quisermos:
icon-icons.com/pt/
SHOW! tava procurando uns sites mesmos para isso haha