我想将从这个 JXDatePicker 派生的值插入到 Java DB 中的 Date 字段中。我应该如何仅以时间表示为 dd/mm/yyyy 的方式从该控制器中获取日期,仅此而已??!
问问题
6902 次
1 回答
6
您可以从中获取Date
,JXDatePicker.getDate()
然后使用 aSimpleDateFormat
将日期格式化为所需的格式。
尝试:
SimpleDateFormat formater = new SimpleDateFormat("dd/MM/yyyy");
formater.format(myDatePicker.getDate());
请注意,mm
我用来MM
表示月份的不是您使用的那个。请参阅SimpleDateFormat
javadoc以了解您可以使用的模式字母。
跟进
为了完整起见,我不得不提一下,将表示日期的格式化字符串放入数据库通常是一个坏主意。例如,当您想以另一种格式显示它或使用SQL
.
存储日期/时间的一种方法是使用您从中获得的时间戳Date.getTime()
。这是Date
类的getTime()
javadoc:
返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
将 a 的这种表示形式存储在数据库中可以让您在检索时间戳时Date
更轻松地创建对象:Date
Long myTimeStamp = getTimeStampFromResultSet();
Date date = new Date(myTimeStamp);
或者使用中的列SQL
做一个简单的比较:
SELECT * FROM MY_TABLE WHERE MY_DATE > ?
它还使其具有一定的可移植性,例如,您可以将时间戳发送到使用不同技术构建的瘦客户端。
话虽如此,使用像Joda Time这样的日期和时间库而不是使用不可靠且不方便的 JavaDate
或Calendar
类也符合您的最大利益。
于 2011-10-25T03:48:17.280 回答