المشاركات

عرض الرسائل ذات التصنيف java

Implementando Contextos Java e Inyección de Dependencia (CDI)

صورة
La inyección de dependencia es una técnica popular en el desarrollo de aplicaciones empresariales java. En una inyección de dependencia, también llamada Inversión de Control (Inversion of Control - IoC) , un componente especifica los recursos de los que depende. Un inyector, típicamente un contenedor, proporciona los recursos al componente. Aunque la inyección de dependencia puede ser implementado de varias maneras, muchos desarrolladores lo implementan con anotaciones.

Optimizando GlassFish para producción

صورة
Gracias a un Tweet de Edwin Ilovares (@_edwini) me hizo recordar en publicar un post que lo tenía pendiente desde hace un tiempo, y es sobre la optimización de GlassFish.

AOP con Java EE 6

صورة
En un anterior Post hablé sobre AOP usando Spring . Es un post algo antiguo, y me había basado de un artículo publicado en JavaRanch . Esa vez fue usando el famoso Framework Spring, pero esta vez mencionaré como funciona el AOP desde Java EE6. Creo que ya existía desde la versión EE 5, pero no importa, aquí lo mencionamos para el deleite de todos.

Contraseñas encriptadas con Java

صورة
¿Quién no ha querido encriptar texto o archivo? Hay diversas maneras para hacer eso, por ejemplo, utilizando un diccionario donde se reemplazara cada caracter por un código.. y para poder desencriptarlo se debería utilizar el mismo diccionario para revertir el proceso. Pero si el diccionario cae en manos de alguien que no queremos que lo sepa, entonces estamos en peligro. Cuando yo programaba en pascal, mi encriptación favorita era invirtiendo los bits... pero cualquiera también puede invertir los bits y listo. Pero ya gente experta logró algoritmos de encriptación populares. Los más conocidos: MD5 y SHA. En este post hablaremos cómo encriptar texto, sobretodo las contraseñas, utilizando MD5 o SHA.

JComboBox de Objetos

صورة
Cuando se usa Swing, el problema más común es mostrar elementos en un JComboBox. Lo que "normalmente" hacen es agregar cadenas a los elementos del JCB (JComboBox), pero para obtener el elemento seleccionado, se obtendría solo el valor puestos. Algunos hasta colocan el ID del elemento a mostrar, y luego buscan el elemento seleccionado en la colección. Toda una jarana... pero ¿han notado que para obtener el elemento seleccionado se utiliza el método getSelectedItem() que devuelve un objeto? Si debería mostrar String, entonces, debería devolver un String, ¿cierto? En este post explicaremos como utilizar correctamente el JCB.

Lo que se viene con JDK 7 & NetBeans 7

صورة
Se dice que el número 7 es el número de la perfección, y para el mundo Java este número no está lejos de serlo. Está cerca el JDK 7, con muchas mejoras en la sintaxis, y casi a la par también sale el NetBeans 7 con su respectiva compatibilidad. En este post mostraré algunas características de estos software.

Swing: Componentes enlazados a un bean

صورة
La mejor manera de tener sincronizado un control swing con un javabean es utilizando enlaces (binding). La manera común y poco profesional es utilizar los set  y gets de cada atributo de un bean para asociar a cada componente. //... nombreTF.setValue(persona.getNombre()); edadTF.setValue(persona.getEdad()); //... etc y si son 80 campos, nadie querra hacerle mantenimiento. Aquí es donde entran los enlaces. Mostraremos un ejemplo con NetBeans para enlazar los componentes de un formulario con un JavaBean.

Compilando y ejecutando una clase java.... desde java

صورة
El JDK 6 viene con varias funcionalidades interesantes, entre ellas la compilación de clases java desde el mismo java.

CouchDB, base de datos orientada a documentos

صورة
Desde Panamá, nuestro amigo Arístides Villareal , ha publicado algunos post referente a esta base de datos orientada a documentos llamada CouchDB . http://avbravo.blogspot.com/search/label/couchdb http://avbravo.blogspot.com/search/label/m21couchdb CouchDB proporciona un API JSon para que puede ser accdido desde cualquier entorno, incluyendo peticiones HTTP. Fue escribo en Erlang , un lenguaje de programación funcional ideal para sistemas distribuidos concurrentes.

Enmulando EJB en Web usando Spring

صورة
Cuando salió el EJB 3.1 con la capacidad de poderse ejecutar en un módulo web, comencé a usarlo sin parar. Con los EJB me hace más fácil conectarme a la base de datosusando JPA porque simplemente debería usar  @PersistenceContext respectivamente. Pero no todos los servidores  donde uno va a desplegar aplicaciones son Java EE6, así que las facilidades del EJB 3.1 serían truncadas. Afortunadamente existe Spring para ayudarnos a instanciar clases como si fueran EJB, y más aún, nos permite usar JPA y mantener las notaciones  @PersistenceContext . Veamos cómo se hace esto.

Descargar XLS y PDF sin abrirlos en el navegador (versión Servlet)

صورة
Anteriormente hice un post de cómo " Descargar XLS y PDF sin abrirlos en el navegador " pero fue realizado con PHP. Ahora les traigo el mismo ejemplo pero usando Servlet

Tomcat 7.0

صورة
Apache ha lanzado Tomcat 7.0, con compatibilidad para Servlet 3.0, JSP 2.2, EL 2.2 Se puede descargar desde aquí: http://tomcat.apache.org/download-70.cgi Y más documentación, aquí: http://tomcat.apache.org/tomcat-7.0-doc/

Portales en Java

صورة
Una aplicación web es relativamente fácil de hacer... pero si nuestro cliente quiere que le hagamos un portal para que sea Intranet, Extranet, administración de contenidos, gestor de archivos, foros, chat, wiki y 50 etc. más, podemos decir "sí se puede", y a medida que avanza el proyecto pensamos que se podría vender a otro cliente, tratamos de hacer lo más estándar posible.... y nunca terminamos. Estos sistemas web que permiten administrar contenidos se llaman Sistemas de Gestión de Contenidos (En inglés Content Management System - CMS) Estos ya tienen todo, o al menos todo el soporte necesario para gestionar contenidos web. Es una plataforma, y nosotros deberíamos unicamente anexarle las partes que faltan y lo que nuestro cliente necesita. Los más conocidos en PHP son Joomla , PHPNuke , Drupal .  Estos se encuentran en los hosting que se alquila por US$20 al año. Son simples, y funcionan para todos tipos de usuarios. Pero ¿y Java?

net.sf.jasperreports.engine.JRRuntimeException: Unknown hyperlink target 0

Si haz usado iReport para hacer tus reportes, y al ejecutarlo en un servidor lanza este error net.sf.jasperreports.engine.JRRuntimeException: Unknown hyperlink target 0 y por más que compiles y recompiles el .jrxml, lanza el mismo error.... revisa las versiones del iReport y del JasperReports utilizado en el proyecto.

Convertir cualquier cadena en objeto java.util.Date

DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = dateFormat.parse("2010-05-17 15:18:19");

XML a Objeto Java

¿Quién no ha querido convertir un archivo XML a objetos Java? Usando el DOM, es muy útil pero bastante trabajoso. Hay un "parser" de Apache Commons llamado Digester que permite convertir un XML (usando algunas reglas) a objetos Java. Lo he usado bastante tiempo y me es muy útil. Así que comparto un ejemplo usando esta biblioteca. https://apuntes.dev.java.net/files/documents/10908/150452/ReadXML.tar.gz En este ejemplo, se leerá el archivo http://www.xmlfiles.com/examples/simple.xml , lo descargará de Internet usando HttpClient , y lo procesará usando DOM del JDK, y luego usando el Apache Digester.  Espero que les sea de utilidad.

Nuevas sugerencias (hints) de NB 6.9

صورة
He estado revisando el nuevo NetBeans 6.9 y he encontrado algunos interesantes hints. No concatenar en un StringBuilder/StringBuffer El logger debe ser final Parametriza el logger, no lo concatenes

Catálogo de tutoriales Java

No sé si ya lo sabíais, pero yo recién lo encontré. Existe un catálogo de bastantes (y eso es poco) ejemplos de Java, para todos los gustos y sabores. http://www.java2s.com/Tutorial/Java/CatalogJava.htm También hay catálogos para otros lenguajes, pero lo que a mi me importa es Java :) Provecho

Ahora en java.net

Apuntes de java ya tiene su alojamiento en java.net. https://apuntes.dev.java.net/ Será más fácil para reunir y atender foros, preguntas, publicar proyectos, ejemplos, vídeos, colaboración en todos, etc. Como todo proyecto, comienza con algo pequeño y terminará siendo grande.

NetBeans 6.9 en ML1

NetBeans.org ha anunciado hoy el lanzamiento de la versión Milestone 1 de NetBeans 6.9 Geertjan Wielenga , presenta un ejemplo de un CRUD para NB Platform 6.9 usando NB 6.9: Quick Start: NetBeans Platform CRUD Sample in NetBeans IDE 6.9 Esto demuestra que NetBeans aún sigue vivo, a pesar del comentario de muchos que dicen que Oracle lo iba a pisotear. Aprovecho este post para compartirles el Call for Paper para el JavaOne + Developer 2010 Conference que se realizará del 19 al 23 de setiembre del 2010. La recepción de Papers comienza el 10 de febrero hasta el 14 de marzo.