Je čas zjistit, co znamenají názvy typů polí Java .
[ je array-of . Takže [[ je pole-of pole-of, tj. oba názvy typů jsou 2-d pole.
L označuje typ odkazu, za nímž následuje název třídy.
C je primitivní typ char .
Zde tedy vidíme, že se pokoušíte přetypovat dvourozměrné pole java.lang.String na dvourozměrné pole char . To nedává smysl. Vypadá to, že JDBI mapuje datový typ Java char na typ řetězce SQL, jako je character nebo character varying , (ověřte kontrolou v tabulce v databázi). Pokud ano, ovladač JDBC to vrátí z databáze jako java.lang.String .
Musíte tedy toto mapování buď přepsat, aby používal datový typ databáze "char" - jeden znak - nebo jednodušeji tvrdit, že řetězce jsou dlouhé jeden znak a rozbalit je do znaku. Takže budete muset zkopírovat pole.