Maison >base de données >tutoriel mysql >Comment insérer et récupérer des objets « java.time.LocalDate » à l'aide de JDBC ?

Comment insérer et récupérer des objets « java.time.LocalDate » à l'aide de JDBC ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-22 01:37:08446parcourir

How to Insert and Retrieve `java.time.LocalDate` Objects using JDBC?

Insérer java.time.LocalDate objets dans et récupérer

de la base de données SQL à l'aide de JDBC

Question :

Comment gérer les types java.time tels que LocalDate en utilisant JDBC (pour les bases de données SQL comme H2) ?

Réponse :

Il existe deux méthodes :

Pilote compatible JDBC 4.2 :

  • Insérer les données :

    <code class="language-java">  myPreparedStatement.setObject(1, myLocalDate); // 自动转换</code>
  • Récupérer des données :

    <code class="language-java">  LocalDate localDate = myResultSet.getObject("my_date_column_", LocalDate.class); // 预期返回类型</code>

Pilote incompatible (pré-JDBC 4.2) :

  • Insérer des données : Utilisez java.sql.Date.valueOf(myLocalDate) pour convertir LocalDate en java.sql.Date.
  • Récupérer des données : Utilisez sqlDate.toLocalDate() pour convertir java.sql.Date en LocalDate.

java.time Framework pour Java 8 :

  • Introduit de nouvelles classes datetime améliorées (telles que LocalDate).
  • évite les problèmes avec les classes héritées (par exemple java.util.Date, Calendar).
  • Possibilité d'échanger des données directement avec les bases de données JDBC (lors de l'utilisation d'un pilote compatible).

Remarque : H2 prend en charge JDBC 4.2, vous pouvez donc utiliser la méthode de compatibilité la plus simple (première méthode).

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!

Déclaration:
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