sábado, 1 de junio de 2013

Crear un pdf en JAVA con iText

Buenas ahora le toca el turno a hacer lo mismo que hemos hecho con .NET con JAVA. Vamos a crear un pdf usando la librería iText. Como veremos el código es similar al que hemos usado para la aplicación que crea pdfs que hemos desarrollado en .NET. Voy a explicar cómo crear una aplicación en JAVA que se conectará a una base de datos JavaDB en un servidor y que mostrará los datos en un Formulario Maestro-Detalle. Pues bien en función de los datos seleccionados por el usuario crearemos en tipo de ejecución un pdf.  Es un proyecto muy simple y además aprovecho y cuelgo el proyecto el proyecto acabado de la aplicación que calcula la retribución en especie por el uso del coche de la empresa con fines privados y añado la posibilidad de crear facturas para justificar el IVA repercutido al trabajador. Está disponible en este enlace. Si alguien quiere el proyecto en NetBeans que me lo diga y lo subo también. Bueno la creación de pdfs quedaría de esta manera:
Pero he de reconocer que el proyecto de aplicación para calcular las retribuciones en especie por el uso privativo del coche muy simple y no serviría para entregar a un cliente. ¿El motivo? Lógicamente las facturas tienen que tener un número correlativo. No vale pasar de la 5 a la 10. Además si vemos que nos hemos equivocado en algo pues tendríamos que generar de nuevo la factura rellenando todos los datos. En pocas palabras haría falta una base de datos.
Pues bien ahora cuelgo el vídeo donde explico la parte de crear pdfs en JAVA con iText.

Pues bien ese será el tema que abordaremos después de exámenes, como hacer que los datos se guarden en nuestras bases de datos y para ello quiero hablar sobre cómo usar JAVA con MySQL, con Derby (tanto para bases de datos embebidas como en un server) y con Hsqldb. Estas dos últimas son ideales para tener bases de datos locales para nuestras aplicaciones de escritorio.  Pero no quiero adelantar temas lo que si que quiero decir que me centraré en explicar el uso de bases de datos: tanto situadas en un servidor y que nuestra aplicación sea una especie de cliente que se conecta al servidor y trabaja con los datos, como de aplicaciones de escritorio que usan bases de datos locales. Para ello quiero repasar como ejecutar comandos en nuestro código JAVA, que es lo más básico, y lo que actualmente se usa cada vez más que es JPA e Hibernate para persitencia de datos en nuestras aplicaciones. Suena feo pero será muy interesante.