【发布时间】:2012-04-06 15:25:21
【问题描述】:
我有一个JSP页面,所以用户可以手动插入他/她到达和离开的时间。 我的问题是:如何从输入框(JSP)转换该字符串,然后将其插入到我的 MySQL 表中进行查询。 我正在使用 Java - servlet。 谢谢
【问题讨论】:
标签: java mysql jsp servlets time
我有一个JSP页面,所以用户可以手动插入他/她到达和离开的时间。 我的问题是:如何从输入框(JSP)转换该字符串,然后将其插入到我的 MySQL 表中进行查询。 我正在使用 Java - servlet。 谢谢
【问题讨论】:
标签: java mysql jsp servlets time
您可以使用SimpleDateFormat 将给定模式中的String 解析为java.util.Date 对象。
假设是HH:mm,那么你可以这样做:
String time = request.getParameter("time");
Date date = null;
try {
date = new SimpleDateFormat("HH:mm").parse(time);
}
catch (ParseException e) {
request.setAttribute("time_error", "Please enter time in format HH:mm");
}
拥有java.util.Date 对象后,您可以通过将其转换为java.sql.Time 并使用PreparedStatement#setTime() 将其存储在TIME 列中。
preparedStatement = connection.prepareStatement("INSERT INTO tablename (columname) VALUES (?)");
preparedStatement.setTime(1, new Time(date.getTime()));
preparedStatement.executeUpdate();
【讨论】:
java.sql.Date。使用java.util.Date。
java.sql.Date 无论如何都很少使用。您基本上只需要在 PreparedStatement#setDate() 方法中使用它,其他任何地方都不需要。