Gerenciando datas e carimbos de data/hora MySQL em Java
Ao trabalhar com um banco de dados MySQL a partir de um aplicativo Java, manipular informações de data e hora pode ser uma tarefa difícil. desafio devido aos diferentes tipos de dados disponíveis. Para encontrar um compromisso adequado, é importante entender as características de cada tipo.
Representação em Java
Em Java, as datas são normalmente representadas pelo java.util. Classe de data. Esta classe encapsula um carimbo de data/hora, que contém informações de data e hora. A precisão de java.util.Date é normalmente em milissegundos.
Representação no MySQL
O MySQL oferece três tipos padrão de data e hora: DATE, TIME e TIMESTAMP. No JDBC, esses tipos são mapeados para java.sql.Date, java.sql.Time e java.sql.Timestamp, respectivamente. Essas classes são subclasses de java.util.Date.
Ao contrário de java.util.Date, java.sql.Date contém apenas informações de data, enquanto java.sql.Time contém apenas informações de hora. java.sql.Timestamp, por outro lado, combina informações de data e hora. A precisão desses tipos depende do banco de dados, mas geralmente é em milissegundos.
Armazenando carimbos de data/hora
Para armazenar um carimbo de data/hora no banco de dados, você pode usar PreparedStatement# Método setTimestamp().
java.util.Date date = getItSomehow();
Timestamp timestamp = new Timestamp(date.getTime());
preparedStatement = connection.prepareStatement("SELECT * FROM tbl WHERE ts > ?");
preparedStatement.setTimestamp(1, timestamp);
Recuperando carimbos de data e hora
Para recuperar um carimbo de data/hora do banco de dados, você pode usar o método ResultSet#getTimestamp().
Timestamp timestamp = resultSet.getTimestamp("ts");
java.util.Date date = timestamp; // You can just upcast.
Ao compreender esses diferentes tipos de dados e seus padrões de uso, você pode gerenciar com eficácia datas e horários em seu aplicativo Java ao fazer interface com um banco de dados MySQL.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3