Maison > base de données > tutoriel mysql > Comment convertir l'heure d'époque en un horodatage MySQL en Java ?

Comment convertir l'heure d'époque en un horodatage MySQL en Java ?

Patricia Arquette
Libérer: 2024-12-12 18:13:09
original
747 Les gens l'ont consulté

How to Convert Epoch Time to a MySQL Timestamp in Java?

Conversion de l'heure d'époque en horodatage MySQL en Java

Lorsque vous travaillez avec des valeurs de temps en Java et MySQL, convertir l'heure d'époque, représentant le nombre de secondes depuis l'époque Unix, vers un format d'horodatage MySQL peut être nécessaire.

Pour réaliser cette conversion, une approche populaire consiste à utiliser l'API java.time de Java 8. Cette API fournit un ensemble de classes et d'interfaces modernes pour gérer les dates et les heures, y compris les conversions entre différents formats.

Conversion de l'heure d'époque en horodatage MySQL

L'extrait suivant démontre comment convertir l'heure d'époque en horodatage MySQL à l'aide de l'API java.time :

import java.time.LocalDateTime;

// Convert epoch time in milliseconds to seconds
long epochSeconds = System.currentTimeMillis() / 1000;

// Create a LocalDateTime object from the epoch seconds
LocalDateTime timestamp = LocalDateTime.ofEpochSecond(epochSeconds, 0, java.time.ZoneOffset.UTC);

// Format the LocalDateTime object as a MySQL timestamp string
String mySQLTimestamp = timestamp.toString();
Copier après la connexion

Le résultat La chaîne mySQLTimestamp sera au format AAAA-MM-JJ HH:MM:SS, qui est compatible avec le type de données d'horodatage MySQL.

Approche alternative : SimpleDateFormat

While l'API java.time est généralement recommandée pour gérer les dates et les heures, une autre approche pour convertir l'heure à l'aide de l'ancien SimpleDateFormat class :

import java.text.SimpleDateFormat;
import java.util.Date;

// Convert epoch time in milliseconds to a Date object
Date date = new Date(epochSeconds * 1000);

// Create a SimpleDateFormat to format the Date as a MySQL timestamp string
SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-DD HH:MM:SS");

// Format the Date object as a MySQL timestamp string
String mySQLTimestamp = sdf.format(date);
Copier après la connexion

Cette approche est moins préférée par rapport à l'API java.time en raison de problèmes potentiels de sécurité des threads et d'incohérences entre les différentes versions du JDK.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal