Posts etiquetados ‘hibernate’

h1

Wicket

2 Abril 2009

He estado mirando qué es y cómo funciona Apache Wicket, y parece tener muy buena pinta.

Ofrece algunas ventajas respecto a Struts, como evitar los archivos de configuración XML, reutilización del HTML de los prototipos directamente y mejor orientación a objetos del código.

Para empezar se puede utilizar el arquetipo Maven 2 para tener un proyecto funcionando en sólo 5 segundos*:

mvn archetype:create -DarchetypeGroupId=org.apache.wicket
-DarchetypeArtifactId=wicket-archetype-quickstart
-DarchetypeVersion=1.4-rc2 -DgroupId=com.mycompany -DartifactId=myproject

Otras configuraciones se pueden obtener a través de esta página.

(*) Hay que tener instalado y funcionando Maven 2.

Read the rest of this entry ?

h1

Valor de las variables en Hibernate

28 Enero 2009

Para poder ver el SQL generado por Hibernate basta con configurar el parámetro show_sql en el archivo de configuración.

Pero para poder ver los valores que toman las variables en las consultas se debe configurar el logger a nivel TRACE para las clases “org.hibernate.type”.

Para configurarlo con Log4j se puede hacer de la siguiente forma en el archivo log4j.properties:

log4j.logger.org.hibernate.type=TRACE, stdout

Con esto conseguiremos ver los mensajes donde enlaza las variables con los valores por la consola, justo después de cada consulta SQL.

h1

Auditoría con Hibernate

10 Marzo 2008

He estado intentando implementar un sistema de auditoría con Hibernate, utilizando un interceptor, migrando desde un sistema basado en Spring AOP, en el cual es más complicado saber qué objetos son nuevos y cuales se actualizan en base de datos.

Un interceptor Hibernate (org.hibernate.Interceptor) permite ejecutar código en diferentes momentos de la transacción, de manera que resulta idóneo para informar o registrar datos de auditoría.

El interceptor lo he creado a partir de EmptyInterceptor, que es un Interceptor vacío, pero que retorna los valores adecuados para asegurar el buen funcionamiento de Hibernate, y sólo hay que sobreescribir los métodos necesarios.

Read the rest of this entry ?