JAVAsql。日期格式错误
我有这个密码
public static void main(String[] args) throws ParseException {
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
String parsed = "15/07/2015";
java.util.Date date = format.parse(parsed);
java.sql.Date sql = new java.sql.Date(date.getTime());
System.out.println(sql);
}
我试图将日期格式作为15/07/2015
插入数据库。然而,每次它都以2015-07-15
的形式向我提供输出。我不明白为什么会这样
- 是因为
java.sql.Date
的默认日期格式是yyyy-MM-dd
李> - 或者,在解析成
java.sql.Date
之后,我需要设置不同的日期格式吗李>
任何建议或指导都会有所帮助。谢谢
# 1 楼答案
与} method on ^{} 以“yyyy-mm-dd”格式打印日期
java.util.Date
一样,java.sql.Date
存储未格式化的日期值。当你把它传递给System.out.println
时,它会被调用toString()
。^{你不需要设置任何日期格式。如果需要Java中的特定格式,可以使用
SimpleDateFormat
对象将其格式化为String
;ajava.sql.Date
是ajava.util.Date
。但是您可以直接将java.sql.Date
传递到数据库;这就是它的设计。很可能您的数据库具有某种转换功能,可以像Java一样格式化和解析日期值# 2 楼答案
您正在使用
java.sql.Date
对应于SQL DATE
,这意味着它将以year-month-date
的格式存储。 不能设置日期格式。 如果希望它的格式为2015-07-15
,那么必须使用日期格式化程序将日期转换为字符串此处
date1
将采用所需格式步骤1)在数据库中将日期存储为仅日期
第2步)向^{显示数据时
从数据库中获取日期
然后使用日期格式化程序
将此
date1
发送到jtable