I'm having trouble trying to list the data.
Exception in thread "main" java.lang.NullPointerException at template.Dao.getList (Dao.java:111) at main.Main.listarTravel (Main.java:161) at main.Main.menu (Main.java : 58) at main.Main.main (Main.java:39)
My codes:
ClasseDAO
public List<Bean> getLista() {
try {
List<Bean> viagens = new ArrayList<Bean>();
PreparedStatement stmt = ConexaoMySQL.
prepareStatement("select * from viagem");
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
// criando o objeto viagem
Bean viagem = new Bean();
viagem.setIdViagem(rs.getInt("idViagem"));
Calendar dataInicio = Calendar.getInstance();
dataInicio.setTime(rs.getDate("dataInicio"));
viagem.setDataInicio(dataInicio);
Calendar dataF = Calendar.getInstance();
dataF.setTime(rs.getDate("dataFim"));
viagem.setDataFim(dataF);
viagem.setCidade(rs.getString("cidade"));
viagem.setUf(rs.getString("uf"));
viagem.setValorDiaria(rs.getDouble("valorDiaria"));
viagem.setColaborador(rs.getString("colaborador"));
viagem.setCliente(rs.getString("cliente"));
// adicionando o objeto à lista
viagens.add(viagem);
}
rs.close();
stmt.close();
return viagens;
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
Main class
private static void listarViagem() {
Dao dao = new Dao();
List<Bean> viagens = dao.getLista();
for (Bean contato : viagens) {
System.out.println("IdViagem: " + contato.getIdViagem());
System.out.println("tipo: " + contato.getTipo());
System.out.println("Data de inicio: " +
contato.getDataInicio().getTime() + "\n");
System.out.println("Data de fim: " +
contato.getDataFim().getTime() + "\n");
System.out.println("cidade: " + contato.getCidade());
System.out.println("uf: " + contato.getUf());
System.out.println("valor da diaria: " + contato.getValorDiaria());
System.out.println("colaborador: " + contato.getColaborador());
System.out.println("cliente: " + contato.getCliente());
}
}
Is there any simpler way to do list data using jdbc in java? What is the simplest way to do this?