9
votes

NullPointerException sur les résultats des résultats.Betdate ()

Je reçois un java.lang.nullpointException sur appeler ResulatsS.getDate () dans le code suivant. L'entrée dans la base de données ne semble toutefois pas être null . La connexion semble être active, car d'autres champs sont récupérés. Qu'est-ce que je fais mal? XXX

Voici la sortie et la trace de la pile: xxx

J'ai le schéma suivant: xxx

et l'entrée suivante dans la base de données: xxx


7 commentaires

Pourriez-vous essayer Rs.gettiMestamp ();


Je pense que la question sera avec le format de date SQL. Est le DateTime un type de données approprié que vous faites référence? Essayez date à la place.


@SEMIHEKER gettiMestamp () aussi lance nullpointException .


Cela semble être un bogue dans votre pilote JDBC. Quelle est la version que vous utilisez? Les pilotes MySQL récents n'ont même pas une classe appelée Resulatset


@Dima J'utilisais mysql-connector-java-5.0.8 . J'ai mis à niveau vers MySQL-Connector-Java-5.1.34 qui semble avoir une classe résultatsset . Il affiche maintenant un java.sql.sqxception Dit Fonctionnement non autorisé après la fermeture de ResultSet Closed .


Merci de votre aide. J'ai trouvé user.process interrogea en outre la base de données de la base de données fermant ainsi le rapport .


Comme @SemiHeker suggéré, gettiMestamp () me donne finalement le résultat souhaité.


3 Réponses :


3
votes

Le type du champ créé_on dans votre base de données est DateTime , ce n'est pas le même que la date Java date

Vous aurez besoin de le convertir.

Si vous regardez la première réponse à ce Question Vous verrez comment réparer il


2 commentaires

Merci pour le lien. Utilisation de gettiMestamp () me donne le résultat souhaité, une fois que je me débarrasse du nullpointerexception .


La conversion d'un DateTime (équivalent à un horodatage) est automatique et requise par la spécification JDBC (il tombera simplement le temps)



4
votes

Comme mentionné dans cette Question , pourriez-vous essayer STHG comme ça?

Je prends le code aussi de la question que j'ai mentionnée ci-dessus. xxx


4 commentaires

gettiMestamp () donne également la même erreur, comme je l'ai mentionné dans le commentaire. Obtenir un nullpointException sur rs.gettementastamp ("Créé_on") .


Vous avez dit que "comme @Semiheker suggéra, gettiMestamp () me donne finalement le résultat souhaité.". Cette réponse est-elle ok pour vous?


Oui, une fois que je me débarrasse de la NPE. L'erreur était dans la fonction user.process fonction. Merci.


Oh je suis content de t'aider :)



2
votes

J'ai trouvé user.process interrogea en outre la base de données de la base de données fermant ainsi les Resultats actuels (ou donc je spécule). Le nullpointeexception disparaît lorsque je fais ce qui suit: xxx

utilise également gettiMestamp () comme suggéré par d'autres solutions me fait le résultat souhaité .


0 commentaires