我从输入
获取Jsp中的字符串<form method=POST action="ResultServlet">
Enter date
<input type="datetime" name="StartEvent" >
<input type="datetime" name="StopEvent" >
<input type="submit" name="PostThis" value="Show" class="f-halfbutton">
我尝试将其格式化或解析为日期,以便将其发送到我的数据库。
String stopDateStr = request.getParameter("StopEvent");
SimpleDateFormat sdf = new SimpleDateFormat("yyMMddHHmmssZ");
Date to = new Date();
try {
to = sdf.parse(stopDateStr);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(from);
System.out.println(to );
当我打印字符串时,我会得到正确的格式,如2015-05-19 15:19:12
我希望保持相同的格式,只需将其更改为日期而不是字符串。 但在格式化我的字符串或日期后,它应该是现在看起来像这样 1月19日星期一15:19:12 CET 2015
我试着在这里阅读解决方案,但似乎没有什么对我有用。
我已经在simpledateformatter上阅读oracle,知道用什么字母来获取数字,但似乎没有用。
有人为此得到了很好的解决方案吗?
答案 0 :(得分:1)
将数据库插入数据库时格式化无关紧要。您只需要从字符串中获取正确的日期,然后将其插入数据库。从数据库中检索值时,无论如何都可以格式化它...
您可以使用以下内容:
String date = "your_date_formatted";
Date dt= new SimpleDateFormat("date_format").parse(date);
java.sql.Date sqlDate = new java.sql.Date(dt.getTime());
Connection con = ...;
PreparedStatement p = con.prepareStatement("insert into table(date_field) values(?))");
p.setDate(1, dt);