我有以下SQL查询
select to_date(start_date, 'dd-Mon-yy') AS start_date FROM table
我还有以下ResultSet对象(rs)
rs.getDate("start_date")
当我在SQL开发人员中直接针对数据库(Oracle)运行查询时,格式按预期返回(08-AUG-12
),但是当我使用JDBC在我的Java应用程序中运行查询时,它打印为{{ 1}}。
我的格式是否正确?我应该只选择列(日期数据类型),然后通过JodaTime的DateTimeFormatter格式化?我不确定我在这里做错了什么。
当我从java.sql.Date转换为java.util.Date时会发生同样的事情......
答案 0 :(得分:1)
您只是在这里转换为日期...您可能希望转换为输出字符串。
TO_CHAR( mydate, 'mm-dd-yyyy' )
答案 1 :(得分:1)
在Java中处理Date
对象时,不会考虑数据库格式。如果您想要完全匹配函数的格式,可以使用TO_CHAR
,并将列作为String
获取。
或者,您继续将列添加为Date
,然后使用DateTimeFormatter
对其进行格式化。