我已经获得了一些代码可供使用。我需要修改现有代码以返回一个额外的列。使用SQLDeveloper工具,我可以看到一个示例记录(通知日期和时间信息):
30-NOV-17 15:54:00
我已经获得的代码执行以下操作:
// Create a Hibernate query (Oracle SQL query)
Query query = session.createSQLQuery(<NATIVE_SQL_QUERY_HERE>);
List<Object[]> rawDataRows = query.list();
if (rawDataRows != null) {
for(Object[] rawDataRow : rawDataRows) {
// I am trying to get the Date AND Time here
Timestamp ts = (Timestamp) rawDataRow[7];
}
}
问题是当我尝试这种方法时出现错误(无法将java.sql.Date强制转换为时间戳)。
当我在没有强制转换的情况下访问数据时(只是获取Date对象中的数据),我没有得到时间信息。我需要同时拥有。
到目前为止,我所尝试过的任何内容都没有效果 - 其他帖子有类似的问题,但它们并不完全相同。
非常感谢任何建议/建议 - 谢谢!
答案 0 :(得分:0)
您可以使用此代码:
...
Calendar calendar = Calendar.getInstance();
calendar.setTime(rawDataRow[7]);
Timestamp ts = new Timestamp(calendar.getTimeInMillis());
...