Bienvenido a Java Mexico

Java México es una comunidad de desarrolladores mexicanos en el lenguaje Java.

Este sitio es colaborativo, automáticamente al registrarte obtienes un Blog para compartir tus conocimientos o información acerca del lenguaje. Antes de publicar en tu blog o los foros por favor lee los lineamientos de publicación.

Para dudas y problemas con respecto al lenguaje Java puedes visitar los Foros de Discusión.

Los programadores de verdad no usan spring-jdbc?

Algunas veces me he visto en discusiones del tipo de "por que usar Spring-JDBC" en un proyecto, si al final de cuentas con JDBC solito es "mas facil" y no hay necesidad de estar leyendo y aprendiendo a usar Spring-JDBC.

Es importante recordar que a menudo, el tiempo para que uno se toma aprender algo nuevo, acaba compensadose con el tiempo ahorrado gracias al nuevo conocimiento adquirido (Aunque tengo que admitir, que a menudo resulta dificil saber de antemano que las cosas resultaran asi).

Veamos el caso por ejemplo, de manejar una conexion (con el statement y resultset respectivos) desde adentro de una aplicacion corriendo en Tomcat.
Cual creen ustedes que es el modo correcto de hacerlo (sin JdbcTemplate, o ConnectionCallback o ninguna de esas "complicaciones" de Spring-Jdbc)

Asi?:

Connection conn = null;
  Statement stmt = null;  // Or PreparedStatement if needed
  ResultSet rs = null;
  try {
    conn = ... get connection from connection pool ...
    stmt = conn.createStatement("select ...");
    rs = stmt.executeQuery();

10a. Reunión de la Comunidad!!

Hacemos la cordial invitación a todos los desarrolladores interesados, miembros de la comunidad, redes sociales y publico que le apasione el desarrollo de software a la 10a. Reunión de la comunidad que se llevará a cabo el día 31 de octubre a las 10:00 A.M., en donde presentaremos el siguiente Taller:

Hands-on Spring 3: The next generation

Impartido por Sergi Almar(@sergialmar) - http://sergialmar.wordpress.com

Descripción:
El taller pretende descubrir las nuevas funcionalidades de Spring 3
dando un previo repaso a lo tenemos hasta ahora con Spring 2.5. Se van
a cubrir aspectos como el nuevo Spring EL, el soporte para REST,configuración al estilo JavaConfig... Todo ello implementando una aplicación real que va a poner en práctica todo lo nuevo!

Acerca del ponente:
Sergi Almar es un ingeniero senior de software apasionado por Java /
JEE. Durante los últimos 4 años, ha estado trabajando en sistemas
desarrollados con Spring. Actualmente, invierte su tiempo impartiendo
cursos oficiales de Spring principalmente en España y latino América
como instructor certificado de SpringSource y desarrollando sus
diferentes proyectos personales.

Requerimientos para aprovechar al máximo el taller:

Los asistentes deberán llevar su propio equipo(laptop) con Java y SpringSource Tool Suite instalado.

Recordandoles que la entrada es totalmente gratuita y que habrá algunas sorpresas para los asistentes...

El lugar de la reunión es en:

Ave. San Lorenzo 1009 Piso 4. Col. del Valle, México, D.F.

El registro es importante que se realice en Coetus, ya que es requerido saber la cantidad de asistentes a la reunión.

La liga del registro es:

http://www.coetus.info/coetus/event/show/13

De antemano agradecemos su asistencia y participación...

Atentamente.

Staff de SH.org, grails.org.mx y JavaMexico.org

JDBC Drivers: Classpathhell en Tomcat, Solucion: Geronimo!?

Necesito mejorar la estabilidad de mi conexión a Oracle desde Java mediante JDBC, hasta el momento, todo apunta a que la solución es actualizar la versión de mi driver JDBC. Parece una solución fácil, si no fuera por el Classpathhell que habita dentro de Tomcat, el application server mas usado en el lugar donde trabajo.

Universal Connection Pool para Driver JDBC de Oracle

Al construir aplicaciones web en java, es muy importante manejar las conexiones a base de datos mediante connection pooling para hacer un uso adecuado de los recursos de la base de datos.

Tomcat cuenta con su propia implementacion de connection pooling que se puede aplicar a cualquier driver JDBC llamado DBCP, pero, desgraciadamente esta implentacion de pooling a menudo falla al cerrar las conexiones por lo que acaba desperdiciando recursos del servidor.

El Driver JDBC de Oracle cuenta con 2 modos de pooling que si bien son mas confiables a la hora de recuperar recursos tampoco estan libres de problemas:

Introducción a SLF4J

Escribo esto porque hace poco hice unas pruebas para comparar el performance de SLF4J contra Jakarta Commons Logging.

Llevaba ya tiempo usando JCL, un framework para logging que tiene la ventaja de ser una capa de abstracción sobre otros frameworks; es decir, se puede programar usando el API de JCL y en deployment se utiliza Log4J por ejemplo para hacer realmente el trabajo de los logs, o bien usar java.util.logging sin tener que cambiar una sola línea de código (JCL auto-detecta Log4J y si no está, se usa java.util.logging). Se pueden hacer interfaces para usar otros frameworks de logging.

SLF4J (Simple Logging Framework for Java) es muy similar: es simplemente una API que en tiempo de ejecución se apoya en algún framework de logging como Log4J, java.util.logging, etc. Su arquitectura interna es distinta en la manera que usa el framework real para logging: debe tenerse en el classpath el JAR que define el API junto con una sola implementación de backend, por ejemplo para Log4J.

La odisea ingresando a Java en la facultad (2)

De regreso por estos lugares!
Esta vez continuando con la odisea de "aprender" a programar en Java.

Querido Blog:
- Pues el curso sige su marcha, es divertido ver la cara de algunos compañeros que no entendieron nada, ver como otros progresan bastante bien, ver como el maestro se divierto hablando de cosas muy tecnicas, despues rie y nos ve con su cara de "jaja los pille".
El maestro nos compartio una documentacion, bastante buena, de lectura pesada pero muy util. (proximamente lo subire y les paso la ligua)
El curso se basa en programacion de servlets, elementos por demas interesantes.

Que en resumen los definia como:
- La parte ejecutable del servidor que se encarga de regresar cierta respuesta ante una llamada HTML.

Su funcionamiento es bastante basico, solo agrega la parte del metodo de envio HTML.

Este es un ejemplo simple de un servlet:

/**
 *  Autor:    ISI
 *  Fecha:    Agosto 2009
 *  Descripción: Servlet que despliega un mensaje de bienvenida.
 */

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HtmlWelcome extends HttpServlet {
    public void doPost(HttpServletRequest request,

GENERAR REPORTE .XLS CON IREPORT EN JSP

Para generar reportes en .xls usando ireport debemos tener en cuenta que necesitamos un archivo en blanco .xls creado en alguna carpeta pues este sera el archivo que llamaremos desde jsp para que nuestro reporte.jasper sea generado alli.

Primero incluimos las librerias

<%@page import = "net.sf.jasperreports.engine.JRException"%>
<%@page import = "net.sf.jasperreports.engine.JRExporterParameter"%>
<%@page import = "net.sf.jasperreports.engine.JasperFillManager"%>
<%@page import = "net.sf.jasperreports.engine.JasperPrint"%>
<%@page import = "net.sf.jasperreports.engine.JasperReport"%>
<%@page import = "net.sf.jasperreports.engine.export.JRXlsAbstractExporterParameter"%>
<%@page import = "net.sf.jasperreports.engine.export.JRXlsExporter"%>
<%@page import = "net.sf.jasperreports.engine.export.JRXlsExporterParameter"%>
<%@page import = "net.sf.jasperreports.engine.util.JRLoader"%>
<%@page import = "net.sf.jasperreports.engine.export.JRPdfExporter"%>
<%@page import = "net.sf.jasperreports.engine.export.JRPdfExporterParameter"%>

luego de declarar las variables que vayamos a tener en cuenta para nuestro reporte debemos adicionar la siguiente linea:
<%
String var="";

JavaMexico.org te lleva a Campus Party México 2009!!

Antes de detallarles la excelente noticia de que tenemos 4 pases para miembros de la comunidad para asistir a Campus Party me gustaría explicar de qué se trata este evento.

Campus Party es un evento de tecnología, creatividad, ocio y cultura digital de nivel mundial, que desde 1997 reúne a miles de personas durante 5 días con el fin de compartir y realizar actividades relacionadas con la tecnología, computación y comunicaciones. Este evento tendrá lugar en México del 12 al 16 de Noviembre.

Durante 5 días días habrá pláticas, talleres, demostraciones y concursos, manteniendo el espíritu de participación y colaboración entre todos los presentes, de igual forma los invitados entablarán un diálogo constante con todos los campuseros. Para los campuseros habrá área de acampada y contarán con lugar de aseo, comida, etc. Se puede "vivir" perfectamente dentro del evento los 5 días.

Para Campus Party México 2009 las áreas serán: Astronomía, Robótica, Modding, Diseño, Fotografía, Música, Video, Desarrollo de software, Software Libre, Seguridad y Redes, Videojuegos de consola, Juegos en PC, Simulación. Y en Zona Expo, el área abierta al público en general habrá demostraciones y exposiciones de nuevas tecnologías y sustentabilidad en Campus Futuro, Campus Verde e Inclusión Digital.

El evento tiene un costo de $1000 pesos que incluyen espacio en La Arena donde el campusero podrá instalar su computadora y conectarse a la red más rápida jamás instalada en México para jugar en línea, compartir archivos, demostrar sus habilidades en diseño, video o simplemente para convivir con 3,500 asistentes más. También incluye una tienda de campaña y acampada para vivir la experiencia 24 horas al día y acceso a la zona de aseo personal.

Campus Party se llevará a cabo en Expobancomer, que está ubicado en Santa Fé, en el DF. Esta sede cuenta con más de 32.000 m2 cuadrados divididas en tres salas iguales y más de 5.000 m2 al aire libre a disposición para la realización de Campus Party México. Para conocer los detalles de la ubicación da clic aquí.

Y aquí viene lo mejor...

JavaMexico.org tiene 4 pases para miembros de la comunidad que deseen asistir!! Tan solo tienes que participar haciendo clic en este enlace, llenar el formulario con tus datos y resolviendo las preguntas del concurso. Esta promoción tiene vigencia de dos semanas a partir de hoy sábado 17 de Octubre de 2009. Los ganadores serán anunciados poco tiempo después del día de la vigencia. Si resultas ganador y ya habías comprado tu boleto te reembolsaremos tu dinero!

Nos vemos en Campus Party!! :-)

IntelliJ IDEA se convierte en proyecto Open Source!

Es un gusto para mi comunicarles esta excelente noticia acerca de uno de los mejores editores para Java (si no es que el mejor).

El día de hoy (15 de Octubre) IntelliJ IDEA se ha convertido en Open Source.

A partir de la versión 9.0 IntelliJ IDEA será lanzado en dos ediciones: Community Edition y Ultimate Edition. La versión de la comunidad contiene todo lo necesario para desarrollar en Java SE, Groovy y Scala, y será licenciada bajo la Apache 2.0 Licence. Mientras que la versión Ultimate (la que será comercial) tendrá todo el soporte hacia Java EE.

Pueden ver las diferencias entre estas dos versiones en este enlace.

Quizá la versión de la comunidad venga un poco limitada, pero esto definitivamente es un buen paso a favor del código libre y dará la oportunidad a muchos desarrolladores de trabajar permanentemente con este fabuloso IDE.

Les paso la nota oficial: http://blogs.jetbrains.com/idea/2009/10/intellij-idea-open-sourced/

Saludos a todos!

Videos de las charlas de la 9a reunión de JavaMexico y SpringHispano

Los videos de la charla del pasado sábado ya están disponibles en SpringHispano

Cito:

La primera charla corrió a cargo de Domingo Suárez (@domix) con el tema de Patrones de Integración Empresariales con Apache Camel. Esta charla no pudimos grabarla en su totalidad, aún así vale la pena verla, Domingo presentó un caso de ejemplo muy claro de cómo estos patrones con ayuda de Camel, le sirvieron para resolver una integración de sistemas muy complicada y que requería alto perfomance:

La segunda charla corrió a cargo de Andrés Almiray (@aalmiray) que estuvo presentando uno de sus proyectos: Griffon, un framework Groovy parecido a Grails pero enfocado al desktop usando Swing. Andrés aprovechó para presumirnos algunos de las aplicaciones que ha construido con este framework, no te lo puedes perder, Andrés ha llevado a Swing a otro nivel de usabilidad.

:::::

También les comentamos que a partir de la siguiente reunión (31 de Octubre) nuestras charlas serán publicadas en el canal Parleys de la comunidad, con lo cual tendrán una nueva manera de presenciar las reuniones y charlas en línea.

Saludos a todos!

Distribuir contenido