Question

Je suis en train de mettre en cache une ligne de données ou tuple d'une requête tiré par les cheveux SQL dans memcached, en utilisant la requête comme la clé et le jeu de résultats que la valeur.

Dans un premier temps j'ai essayé d'insérer un HashMap, m'a donné l'exécution IllegalArgumentException: Non-serializable object

Alors je l'ai essayé envelopper dans une classe qui met en œuvre Serializable, mais la durée d'exécution jette encore l'exception ci-dessus.

Alors, comment insérer un tuple de données à partir d'une requête SQL dans Memcached?

Était-ce utile?

La solution

L'exception objet non sérialisable provient d'un objet à l'intérieur du HashMap. Hashmap lui-même est sérialisable, mais tous les objets étant besoin sérialisé être serailizable. Cette cascade d'exigence à tous les membres d'un objet qui se sérialisé.

Vérifiez les classes des clés et des valeurs et qui sont hashmap qui doit être mis en cache. Si les objets proviennent de votre pilote sql et ne sont pas sérialisable alors vous devrez peut-être copier leurs données dans vos propres objets sérialisables.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top