我想将用户输入日期31-12-2012转换为PostgreSQL日期格式。我附加日期'日 - 月 - 年'(2012年12月31日)
答案 0 :(得分:2)
忽略它的数据库部分 - 你不应该以字符串的形式将它提供给数据库。
相反,使用具有正确模式的java.text.SimpleDateFormat
(“dd-MM-yyyy”)将其解析为Date
(确保使用正确的时区,这在以后很重要) 。然后要在SQL语句中使用它,请使用PreparedStatement
并调用setDate
。您需要从[{1}}创建java.sql.Date
java.util.Date
来创建{{3}}。
时区部分略显凌乱 - SimpleDateFormat.parse
的文档建议 JVM的默认时区用于将“自纪元以来的毫秒”值解释为日期。这表明你应该在解析时使用默认时区 - 但它远非优雅:(
答案 1 :(得分:1)
这很简单。我想你甚至不尝试google。无论如何,这是一个示例代码。
String User_date = "31-12-2012";
java.sql.Date sqlDate = java.sql.Date.valueOf(User_date);
这将解决您的问题。