【问题标题】:How to get TIME out of DATETIME MySQL using java.sql.Date如何使用 java.sql.Date 从 DATETIME MySQL 中获取 TIME
【发布时间】:2014-05-08 07:13:41
【问题描述】:

我的 MySQL 数据库中有一个 DATA/TIME 字段,我正在尝试将其转换为 Java 中的日期和时间。日期工作正常,但时间设置为空。我也尝试过 util.Date ,但得到了相同的结果。如何在不丢失时间的情况下将 DATE/TIME 转换为 java.sql.Date?

这是我的代码

 try{
        statement = connection.createStatement();
        resultSet = statement.executeQuery("SELECT orders.id, orders.date         FROM user, orders " +
                "WHERE user.username='" + user.getUsername() + "' AND user.id = orders.user");
        while(resultSet.next()){
            Order order = new Order();
            order.setId(resultSet.getInt(1));
            order.setUser(user);
            order.setDate(resultSet.getDate(2));
            System.out.print(order.getDate());
            System.out.print( " -> " + order);
            orders.add(order);
    }catch(SQLException ex){
        System.out.println(ex);
    }

【问题讨论】:

标签: java mysql sql datetime


【解决方案1】:

试试这个

java.sql.Date date = new Date(resultSet.getTimestamp(2).getTime());

【讨论】:

  • 然后将时间戳转换为日期?
【解决方案2】:

你不是在问这个,但你可以将日期保存为 mysql 中的 long 并将其视为数字。

要取回日期,只需执行新的 java.util.Date(mysqllong)。

【讨论】:

  • 是的,我想到了,但我不决定我的 mysql 数据库的字段。
猜你喜欢
  • 2011-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-22
  • 2011-03-19
  • 2016-04-07
  • 1970-01-01
相关资源
最近更新 更多