Ваш вопрос неопределенный и неоднозначный. Я оставлю неопределенность с часовым поясом.
Как преобразовать время в метке времени Unix в обычное время?
Я подозреваю, что вы как-то получаете значение long
или, возможно, String
из БД вместо Date
. В JDBC вы обычно хотите использовать соответствующие методы для получения типов данных, специфичных для БД. Тип данных MySQL TIMESTAMP
может быть получен с помощью ResultSet#getTimestamp()
, который дает вам java.sql.Timestamp
, который, в свою очередь, является подклассом java.util.Date
.
В орехе должно быть следующее:
Date date = resultSet.getTimestamp("columnname");
Для дальнейшего форматирования в удобочитаемом формате всякий раз, когда вы собираетесь представить его конечному пользователю, используйте SimpleDateFormat
. Нажмите на ссылку, она содержит обзор всех шаблонов. Вот пример:
String dateString = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
Чтобы сделать все наоборот, используйте соответственно SimpleDateFormat#parse()
и PreparedStatement#setTimestamp()
.