Gebruik HttpServletRequest#getParameter()
om verzoekparameters te verzamelen. Ervan uitgaande dat het invoerveld de naam date
heeft .
String dateString = request.getParameter("date");
Gebruik SimpleDateFormat#parse()
om het te converteren naar java.util.Date
met behulp van een specifiek patroon, afhankelijk van hoe de eindgebruiker werd gevraagd om de datum in te voeren.
Date date = null;
try {
date = new SimpleDateFormat("yyyy-MM-dd").parse(dateString);
}
catch (ParseException e) {
// Show error message to enduser about the wrong format and forward back to the JSP with the form.
request.setAttribute("error", "Invalid format, please enter yyyy-MM-dd");
request.getRequestDispatcher("search.jsp").forward(request, response);
return;
}
Geef dit door als een methodeargument aan uw DAO-methode:
List<ParseBean> results = parseDAO.search(date);
Je moet het converteren naar java.sql.Date
, zodat u PreparedStatement#setDate()
om het in te stellen op de SQL-query:
String query = "SELECT * FROM dateparse WHERE date = ?";
// ...
statement.setDate(1, new java.sql.Date(date.getTime()));
U kunt WHERE date > ?
. gebruiken om te zoeken naar records die nieuwer zijn dan de opgegeven datum, of WHERE date < ?
om te zoeken naar records die ouder zijn dan de opgegeven datum, of WHERE date BETWEEN ? and ?
om te zoeken naar records tussen de opgegeven datums.