27-08-2007 Raul Vicente
Continuando con el artículo que Luis ha escrito sobre persistencia en PHP, yo me he decidido a realizar un post sobre Persistencia en Java utilizando Spring en su misma línea. El artículo sería demasiado extenso así que he decidido esbozar aquello que me parece más importante en este post y realizar un artículo extenso en nuestro nuevo wiki público, así que dejaré un link para que aquellos que lo deseis podaís profundizar, el artículo es un ejemplo real utilizando Spring-JDBC,Spring + Ibatits y Spring + Hibernate.
Los beneficios de Spring en lo que se refiere a la persistencia viene dado por varios aspectos: manejo de transacciones declarativo, cirre de conexiones a la BD transparente al usuario y plantillas para generar los DAOs usando simplemente JDBC o los principales ORMs del mercado, yo en la wiki he dejado ejemplos de Hibernate e Ibatis.
El manejo de transacciones y el manejo de conexiones a la BD se realiza dando de alta los datasources y que nivel de aislamiento de cada uno de los métodos en el archivo de configuración de Spring applicationContext.xml. Para realizar los DAOs, en cambio, simplemente hay que extender la plantilla que nos convenga por ejemplo si queremos utilizar simplemente extenderemos JdbcDaoSupport y si queremos utilizar Hibernate habrá que extender HibernateDaoSupport, así de simple.
Si se desea utilizar JDBC habrá que implementar una clase que implemente la interfaz RowMapper, que será el encargado de mapear los ResultSet a nuestros beans de aplicación, en caso de que se utilice Hibernate o Ibatis el mapeo se realiza de manera especial para cada framework así que no habrá implementar esta clase.
Como lo prometido es deuda, os dejo el link al artículo extendido que aclarará como realizar los pormenores la dirección es esta:
http://www.programania.net/persistencia-en-java/
1. Joserra | agosto 27th, 2007 at 12:34 pm
Lo primero, Gracias por compartir esa documentación!
Lo segundo,… ¿qué herramientas usais para automatizar la generación de código básica? en su día probé AndroMDA pero no me funcionó demasiado bien, para generar POJOs y configuraciones desde el diseño de clases.
Y es que el problema es que hay un trabajo muy repetitivo y propenso a errores en aplicaciones medianas-grandes en toda esta generación de persistencais e interfaces básicos.
2. Barty | agosto 27th, 2007 at 1:23 pm
Hola!
He llegado a este post por casualidad y me interesaba acceder al artículo, pero parece que el link no funciona.
Muchas gracias!
Barty
3. Raúl Vicente | agosto 27th, 2007 at 1:39 pm
Buenas,
ya he arreglado el link se me había ido la olla con el copy paste y a veces pasan estas cosas, gracias por estar al pie del cañón.
Joserra, yo estoy igual que tú no he encontrado ninguna herramienta de generación automática que me convenza suelo utilizar para trabajar con Sprin Spring IDE o bien si se puede MyEclipse, pero como ya sabrás aunque ayudan no son herramientas generadoras de código de todas maneras si encuentras algo que merezca la pena estoy dispuesto a probarlo y a realizar un post.
Gracias a los 2.
4. sakurami | noviembre 17th, 2007 at 5:06 am
Me parece muy bien tu post, solo como observación las entidades se manejan en singular (Usuario) no en plural (Usuarios).
Saludos.
5. Raúl Vicente | noviembre 17th, 2007 at 2:42 pm
La verdad es que tienes razón Sakurami, hice un ejemplo rápido, para ilustrar el uso de Spring, pero puestos a ponernos serios, tienes razón.
Muchas Gracias.
6. Richard | abril 8th, 2008 at 12:30 am
El link no funciona
7. Raúl Vicente | abril 8th, 2008 at 4:47 pm
Luis ha retirado el wiki público que teníamos, ya voy a hablar con él en cuanto tenga una solución lo posteo.
Gracias.
8. Raul Vicente | abril 15th, 2008 at 3:24 pm
Bueno ya he solucionado el tema del link espero que no haya más problemas.
Muchas Gracias.
9. nohora | noviembre 10th, 2008 at 7:56 pm
necesito el programa de convertir palabras de singular aplural en java
gracias