我正在尝试将java日期对象转换为sql日期对象。我尝试自己实现一些东西并提出以下内容:
try {
rs.updateDate("", (java.sql.Date) new SimpleDateFormat("dd-MM-yyyy").parse(jTextFieldDate.getText()));
} catch (ParseException ex) {
Logger.getLogger(helpdesk.class.getName()).log(Level.SEVERE, null, ex);
}
此处 rs 是Result Set
对象, jTextFieldDate ,顾名思义是java文本字段对象。这个实现是否正确。使用此代码可能会遇到哪些问题......
答案 0 :(得分:2)
这不起作用。您无法将java.util.Date
(由parse
SimpleDateFormat
方法返回)转换为java.sql.Date
。要将java.util.Date
转换为java.sql.Date
,您可以执行以下操作:
try {
java.util.Date utilDate = new SimpleDateFormat("dd-MM-yyyy").parse(jTextFieldDate.getText());
java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());
rs.updateDate("", sqlDate);
} catch (ParseException ex) {
Logger.getLogger(helpdesk.class.getName()).log(Level.SEVERE, null, ex);
}
答案 1 :(得分:2)
代码
new SimpleDateFormat("dd-MM-yyyy").parse(jTextFieldDate.getText()))
返回java.util.Date
而不是java.sql.Date
您可以使用java.sql.Date
构建long tm
,java.util.Date.getTime ()