在我的JSP页面中,我有一个字段,即日期,当我request.getParameter("dateVal");
给我时
15-Dec-2012 12:21.
我想将此值传递给我的数据库过程并插入/更新到表中。
如何使用setDate
将值prepareCall
传递给数据库?
由于
答案 0 :(得分:1)
第一步是使用SimpleDateFormat
将其解析为控制器中的一个完整的java.util.Date
实例:
Date date = new SimpleDateFormat("dd-MMM-yyyy HH:mm.", Locale.ENGLISH).parse(dateVal);
然后你可以在数据库层中创建一个java.sql.Date
:
statement.setDate(1, new java.sql.Date(date.getTime()));
无关,请注意java.sql.Date
不记得时间部分。如果您在数据库中实际存在DATETIME
或TIMESTAMP
字段,而不是DATE
字段,则应使用setTimestamp()
代替java.sql.Timestamp
。这样,时间部分也将被存储。
答案 1 :(得分:0)
to_date(date_in_String, format)
答案 2 :(得分:-1)
试试这个:
new SimpleDateFormat("dd-MM-yyyy HH:mm").parse(mydate);