RYN*_*RYN 7 java time date storing-data
我正在使用Java(J2SE)开发一个应用程序.
我需要在数据库中存储一个时间(例如16:30:12).
当我需要存储日期(或日期+时间)时,我将其转换为Unix时间戳,并将其存储为Long数字.
但是当我只需要时间而不是日期和时间时,最好的存储方式是什么?
我正在使用SQLite和MS Access作为DBMS.
谢谢
更好的方法Java 8,或者Joda-Time在早期版本中使用库:
使用LocalTime该类并提取自午夜以来的秒数.您可以将其存储three bytes number (0 to 86399)在数据库中(而不是八字节的日期时间).
https://docs.oracle.com/javase/8/docs/api/java/time/LocalTime.html
LocalTime time = LocalTime.parse("12:34:45");
int secondOfDay = time.toSecondOfDay();
// Save to database
Run Code Online (Sandbox Code Playgroud)
扭转:
// Get from database
LocalTime time = LocalTime.ofSecondOfDay(secondOfDay);
Run Code Online (Sandbox Code Playgroud)