Pregunta

Tengo una propiedad de un objeto de negocio que se calcula. El cálculo implica algunos de los detalles conectado de usuario, por lo que no se puede representar como una simple consulta SQL.

Tengo problemas que representa el campo en el archivo XML de mapeo de Hibernate, porque Hibernate sigue tratando de recuperar el campo de la base de datos, aunque no hay una columna con ese nombre.

¿Fue útil?

Solución

  

Tengo problemas que representa el campo en el archivo XML de mapeo de Hibernate, porque Hibernate sigue tratando de recuperar el campo de la base de datos, aunque no hay una columna con ese nombre.

Probablemente estoy perdiendo algo obvio, pero ... ¿por qué correlacionando este campo, entonces? Pero por si acaso, esto podría ser un caso de uso para una buena <formula> atributo.


  

El campo se encuentra en la clase de Java, y cuando el código A de consulta que puede proporcionar el SQL personalizado para llenarlo, por ejemplo:. T SELECT *, (SELECT x de y) como el campo de la tabla T DONDE ... Hibernate me permite entonces el uso SQLQuery.addEntity (Z.class) y crea el objeto adecuadamente. Por lo que yo entiendo, si dejo el campo de la cartografía por completo, nunca puedo llenar ese atributo a través de mi consulta. He intentado :)

Yo sospechaba algo como esto pero quería obtener la confirmación. No creo que usted tiene muchas opciones: o bien utilizar un <formula> (ya sea una fórmula de "tonto" sólo para hibernación truco) o devolver una no entidad gestionada .

Otros consejos

Parece que usted desea que esta propiedad sea "transitoria"

<transient name="foo" />
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top