Estou tentando fazer uma consulta entre datas, mas esta ocorrendo alguns erros, alguém pode me ajudar ?, segue meu código.
Banco Mysql
public ListgetLista(String dataInicial, String dataFinal) throws SQLException {
String sql = “select * from movimentacao where data BETWEEN ? AND ?”;
PreparedStatement stmt = connection.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
stmt.setString(1, dataInicial);
stmt.setString(2, dataFinal);
List minhaLista = new ArrayList();
while(rs.next()){
Fornecedor c1 = new Fornecedor();
FornecedorDAO dao = new FornecedorDAO();
c1.setDoc(rs.getString(“doc”));
c1.setTipo_doc(rs.getString(“tipo_doc”));
c1.setNome(rs.getString(“nome”));
c1.setEndereco(rs.getString(“endereco”));
c1.setEmail(rs.getString(“email”));
//Date d = rs.getDate(“data”); // a data
//SimpleDateFormat sdf = new SimpleDateFormat(“dd/MM/yyyy”); // formato de data desejado
//String s = sdf.format(d); // data formatada
Calendar data = Calendar.getInstance();
data.setTime(rs.getDate(“data”));
c1.setData(data);
minhaLista.add(c1);
}
rs.close();
stmt.close();
return minhaLista;
}
}
Classe onde quero mostrar os dados.
public class listarFornecedor {
public static void main(String[] args) throws SQLException {
FornecedorDAO dao = new FornecedorDAO();
String dataInicial = null;
String dataFinal = null;
List minhaLista = dao.getLista(dataInicial, dataFinal);
dataInicial = JOptionPane.showInputDialog(“digite a data inicial”);
dataFinal = JOptionPane.showInputDialog(“digite a data final”);
for (Fornecedor fornecedor : minhaLista)
System.out.println(“doc :” +fornecedor.getDoc());
SimpleDateFormat sdf = new SimpleDateFormat(“dd/MM/yyyy”);
System.out.println(sdf.format( fornecedor.getData().getTime()));
System.out.println(“tipo_doc :” +fornecedor.getTipo_doc());
System.out.println(“nome :” +fornecedor.getNome());
System.out.println(“endereco :” + fornecedor.getEndereco());
System.out.println(“email :” +fornecedor.getEmail());
}
}