【发布时间】:2019-02-09 10:10:55
【问题描述】:
在我的数据库中,我有一列 bytea 类型。 我想检索该值并转换为日期时间。
这就是我的价值的样子:
\xaced0005737200166f72672e6a6f64612e74696d652e4461746554696d65b83c78646a5bddf90200007872001f6f72672e6a6f64612e74696d652e626173652e426173654461746554696d65fffff9e14f5d2ea30200024a0007694d696c6c69734c000b694368726f6e6f6c6f677974001a4c6f72672f6a6f64612f74696d652f4368726f6e6f6c6f67793b787000000168cd2d829e737200276f72672e6a6f64612e74696d652e6368726f6e6f2e49534f4368726f6e6f6c6f67792453747562a9c811667137502703000078707372001f6f72672e6a6f64612e74696d652e4461746554696d655a6f6e652453747562a62f019a7c321ae30300007870770500035554437878
我的数据库访问代码:
ResultSet resultSet = statement.executeQuery("SELECT * FROM public.history");
while (resultSet.next()) {
System.out.printf("\n acquire_date: " + resultSet.getString("acquire_Date") );
}
如何将该值转换为 joda DateTime 或 java.util.Date?
我希望时间的格式是这样的:yyyy-MM-dd'T'HH:mm:ss'Z'
【问题讨论】:
-
bytea是 PostgreSQL 中的字节数组。字节数组可以包含任何字节序列。您确定这些字节包含日期吗? (这似乎太长了) -
Postgresql bytea 映射到 Java 字节数组。因此,将值作为 byte[] data = rs.getBytes("acquire_Date") 获取,然后转换为 long。长整数的值看起来很长