Pregunta

Tengo un problema en Grails 1.1.2 + mysql.

Mi clase de dominio algo contiene campo

Map<String, Map<Integer, Integer>> priceMap

Cuando ejecuto la aplicación, Grails crea la tabla 'algo' y sub-table 'something_price_map'. 'something_price_map' contiene

BIGINT(20) price_map
VARCHAR(255) price_map_idx
TINYBLOB price_map_elt

El problema es que cuando lleno la columna PRICEMAP incluso con datos de mapa pequeños como este 'Precita: [es: [100: 4, 500: 20, 600: 24]]', el tamaño de los datos excede el límite de 255 bytes.

¿Hay alguna forma de especificar la restricción MaxSize para el mapa interno (MAP), de modo que Gails usa mediosblob o blobk en lugar de tinyblob?

Por cierto ... usando DB en Mem, todo funciona bien.

¿Fue útil?

Solución

Como sabrán, hay un restricción de mapeo para una clase de dominio. Sin embargo, su problema puede ser demasiado complejo para esa funcionalidad.

En tales casos, puede especificar un mapeo de hibernado explícito (a través del archivo HBM) para una clase de dominio. Esto permite la flexibilidad completa de Hibernate.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top