Frage

Ich versuche, eine Datenzeile oder ein Tupel zwischen einer SQL -Abfrage in Memcached zu speichern, wobei die Abfrage als Schlüssel und das Ergebnis als Wert festgelegt wird.

Zuerst habe ich versucht, eine Hashmap einzufügen, Runtime gab mir IllegalArgumentException: Non-serializable object

Dann habe ich versucht, es in eine implementierende Klasse zu wickeln Serializable, aber die Laufzeit macht immer noch die obige Ausnahme.

Wie können Sie also ein Daten -Tupel aus einer SQL -Abfrage in Memcached einfügen?

War es hilfreich?

Lösung

Die nicht-serialisierbare Objektausnahme stammt aus einem Objekt in der HashMap. Hashmap selbst ist serialisierbar, aber alle serialisierten Objekte müssen serailisierbar sein. Diese Anforderung kaskadiert an alle Mitglieder eines Objekts, die serialisiert werden.

Überprüfen Sie die Klassen der Schlüssel und Werte, die in der HashMap enthalten sind, die zwischengespeichert werden soll. Wenn die Objekte von Ihrem SQL -Treiber stammen und nicht serialisierbar sind, müssen Sie ihre Daten möglicherweise in Ihre eigenen serialisierbaren Objekte kopieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top