java vs oracle中的日期格式问题

时间:2014-05-16 14:20:53

标签: java date

我正在研究java中的日期。真正的任务是在oracle数据库的两个日期之间搜索数据。我使用SimpleDateFormat作为dd-MMM-yyyy使用java的默认日期格式(日期在oracle 10g xe中以相同格式显示)但是当我在netbeans中运行项目时,日期转换为YYYY-MM-DD(我打印了在控制台中的日期)。这成了我搜索的问题,有人可以建议我解决这个问题吗?我还在下面粘贴了我的代码

DateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy");
java.util.Date from_date2 = (Date)sdf.parse(from_date1);
java.sql.Timestamp ts1 = new java.sql.Timestamp(from_date2.getTime());
String from_date = ts1.toString();
System.out.println(ts1.toString());
java.util.Date to_date2 = sdf.parse(to_date1);
java.sql.Timestamp ts2 = new java.sql.Timestamp(to_date2.getTime());
System.out.println(ts2.toString());
String to_date = ts2.toString();

2 个答案:

答案 0 :(得分:0)

而不是

DateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy");
java.util.Date from_date2 = (Date)sdf.parse(from_date1);
java.sql.Timestamp ts1 = new java.sql.Timestamp(from_date2.getTime());
String from_date = ts1.toString();
System.out.println(ts1.toString());

使用您的DateFormat格式化输出。 toString的{​​{1}}使用了不同的默认格式:

Timestamp

答案 1 :(得分:0)

我不明白为什么你创建一个Date,然后你在Time中转换它来显示它。 只是做:

Date yourDate = ...
DateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy");
System.out.println(sdf.format(yourDate));

它会根据您的需要显示您的日期。 但是,你可能需要的是java.sql.Date?所以,请检查:How to convert java.util.Date to java.sql.Date?