Estou tentando enviar para um banco de dados as informações passadas pelo usuário.
Essa informações seriam:
Filia; Nome Completo; Endereco e Cidade.
Depois tentaria traze-las de volta do banco.
Quando executo a JVM indica a exceção:
Exception in thread "main" java.lang.NullPointerException
at br.com.IgrejaViva.CadastraMembro.insert(CadastraMembro.java:60)
at br.com.IgrejaViva.CadastraMembro.main(CadastraMembro.java:14)
O código é esse:
package br.com.IgrejaViva;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Scanner;
public class CadastraMembro{
public static void main(String[] args) throws SQLException {
insert();
select();
}
public static void insert() throws SQLException{
@SuppressWarnings("resource")
Scanner scanner = new Scanner(System.in);
Membro membro = new Membro();
ConnectionDB con = new ConnectionDB();
System.out.println("Bem vindo ao sistema de cadastros");
System.out.println("Digite 1 para sair !");
int op = 0;
while (op != 1) {
System.out.println("Digite a Filial do Membro");
membro.setFilial(scanner.nextLine());
System.out.println("Digite o Nome completo");
membro.setNome(scanner.nextLine());
System.out.println("Digite o Endereço");
membro.setEndereco(scanner.nextLine());
System.out.println("Digite o Cidade");
membro.setCidade(scanner.nextLine());
/*System.out.println(membro.getCidade());
System.out.println(membro.getNome());
System.out.println(membro.getFilial());
System.out.println(membro.getEndereco());*/
if (op >= 2) {
System.out.println("Digite apenas o numero 1 para sair");
}
else op = scanner.nextInt();
}
PreparedStatement query = con.prepareStatement("INSERT INTO Membro (filial, nomecompleto, endereco, cidade) VALUES (?, ?, ?, ?)");
query.setString(1, membro.getFilial()); // AQUI A JVM PARA A EXECUÇÃO
query.setString(2, membro.getNome());
query.setString(3, membro.getEndereco());
query.setString(4, membro.getCidade());
query.executeQuery();
}
public static ArrayList<Membro> select() throws SQLException{
ConnectionDB con = new ConnectionDB();
ArrayList<Membro> listaDeMembros = new ArrayList<Membro>();
Membro membro = new Membro();
PreparedStatement query2 = con.prepareStatement("SELECT * from Membro");
ResultSet resultados = query2.executeQuery();
while (resultados.next()) {
listaDeMembros.add(membro);
membro.setFilial(resultados.getString("filial"));
membro.setNome(resultados.getString("nomecompleto"));
membro.setEndereco(resultados.getString("endereco"));
membro.setCidade(resultados.getString("cidade"));
}
return listaDeMembros;
}
}
Se alguém já passou por esse problema ou sabe como posso resolve-lo me ajude!
Pergunta
Teixeiraa
Se alguém já passou por esse problema ou sabe como posso resolve-lo me ajude!
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.