Použijte HttpServletRequest#getParameter()
pro sběr parametrů požadavku. Za předpokladu, že vstupní pole má název date
.
String dateString = request.getParameter("date");
Použijte SimpleDateFormat#parse()
převést na java.util.Date
pomocí specifického vzoru v závislosti na tom, jak byl koncový uživatel požádán o zadání data.
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;
}
Předejte to jako argument metody vaší metodě DAO:
List<ParseBean> results = parseDAO.search(date);
Musíte jej převést na java.sql.Date
, takže můžete použít PreparedStatement#setDate()
pro jeho nastavení v dotazu SQL:
String query = "SELECT * FROM dateparse WHERE date = ?";
// ...
statement.setDate(1, new java.sql.Date(date.getTime()));
Můžete použít WHERE date > ?
pro vyhledání záznamů novějších než zadané datum nebo WHERE date < ?
pro vyhledávání záznamů starších než zadané datum nebo WHERE date BETWEEN ? and ?
pro vyhledání záznamů mezi zadanými daty.