Gestion des dates et heures MySQL en Java
Lorsque vous travaillez avec une base de données MySQL à partir d'une application Java, la gestion des informations de date et d'heure peut être un problème un défi en raison des différents types de données disponibles. Pour trouver un compromis approprié, il est important de comprendre les caractéristiques de chaque type.
Représentation en Java
En Java, les dates sont généralement représentées par java.util. Classe de rendez-vous. Cette classe encapsule un horodatage, qui contient à la fois des informations de date et d'heure. La précision de java.util.Date est généralement en millisecondes.
Représentation dans MySQL
MySQL propose trois types de date et d'heure standard : DATE, TIME et TIMESTAMP. Dans JDBC, ces types sont respectivement mappés à java.sql.Date, java.sql.Time et java.sql.Timestamp. Ces classes sont des sous-classes de java.util.Date.
Contrairement à java.util.Date, java.sql.Date ne contient que des informations de date, tandis que java.sql.Time ne contient que des informations de temps. java.sql.Timestamp, quant à lui, combine les informations de date et d'heure. La précision de ces types dépend de la base de données, mais elle est souvent en millisecondes.
Stockage des horodatages
Pour stocker un horodatage dans la base de données, vous pouvez utiliser PreparedStatement# Méthode setTimestamp().
java.util.Date date = getItSomehow();
Timestamp timestamp = new Timestamp(date.getTime());
preparedStatement = connection.prepareStatement("SELECT * FROM tbl WHERE ts > ?");
preparedStatement.setTimestamp(1, timestamp);
Récupération des horodatages
Pour récupérer un horodatage de la base de données, vous pouvez utiliser la méthode ResultSet#getTimestamp().
Timestamp timestamp = resultSet.getTimestamp("ts");
java.util.Date date = timestamp; // You can just upcast.
En comprenant ces différents types de données et leurs modèles d'utilisation, vous pouvez gérer efficacement les dates et heures et les horodatages dans votre application Java lors de l'interface avec une base de données MySQL.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3