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.

¿Que es Java?

Podemos encontrar muchas respuestas a ésta pregunta por parte de colegas o en la misma Web. Las respuestas existentes seguramente involucren el hecho que además de ser un lenguaje de programación, Java es también una plataforma de desarrollo. También es posible que se mencionen cosas como Sun, JVM, Bytecode y Applets.

No obstante después de 10 años de Java ciertas cosas han cambiado. De modo que ahora la respuesta no debería centrarse en que Java sirve para hacer Applets, que su desarrollo depende únicamente de Sun, o incluir mitos sobre el bajo desempeño de la JVM.

Por ello Chris Adamson, en su artículo: What is Java?, publicado en ONJava.com, se propone responder la pregunta de acuerdo a los tiempos actuales, involucrando cosas como la compilación dinámica, Java EE, Open Source, GCJ, y el JCP: Java Community Process. Recomendado para aquellos quienes inician en Java así como para quienes aún piensan que Java sólo es para hacer applets...

ACTUALIZACION: Si deseas leer el artículo en español (castellano) puedes leer la traducción del mismo en javahispano.org: ¿Qué es Java?.

Scripting en Java

Por motivos de trabajo de repente me encontraba realizando varios shells scripts (ksh) para automatizar algunas tareas... cosa curiosa, la mayoría de mis scripts terminaban invocando a algún programa en Java, jeje.

No recuerdo bien, pero creo que ese fue el motivo principal por el que dediqué un tiempo a buscar una forma más "natural" de crear shell scripts con todo el poder Java pero con la simplicidad de un lenguaje de scripting, resultado, simplemente me estoy enamorando de Groovy.

Así es, Groovy es un lenguaje de script basado en Java exageradamente fácil de usar y aprender con algunas bondades que no tiene Java, por ejemplo, tipos de datos dinámicos.

Invito a que le den una revisada a este lenguaje, la verdad que vale la pena conocerlo, aunque sea por pura "cultura general" :)

http://groovy.codehaus.org/

El hola mundo en groovy, claro..

//Archivo HolaMundo.groovy

def nombre="Mundo";
println "Hola $nombre";


Sale y vale
Byte

Netbeans+Beryl+AWT/Swing=Bug

Muchos de nosotros conocemos beryl, el entorno grafico desarrollado para GNU/Linux que mejora los graficos en nuestro escritorio.

Bueno pues este entorno grafico viene acompañado de un bug ralcionado con java. El bug nos muestra de forma incorrecta las ventanas con las librerias AWT/Swing(en algunos casos ni siquiera las muestra).

Este bug se da en el IDE Netbeans, en eclipse al parecer el no existe tal problema.

Una posible solución es modificar el fichero /etc/environment y colocar la linea siguiente:

AWT_TOOLKIT="MToolkit"

Espero sirva lo antes mencionado.

Si conocen otra solución no duden en comunicar.

Saludos

Thread Pools en Java 1.5 / 1.6

Algo nuevo que apareció en Java 5 y no he visto que se le haga mucha promoción, cuando es algo muy útil, son los thread pools. El paquete java.util.concurrent define varias clases para usarse en ambientes de alta concurrencia (es decir, muchos threads realizando tareas simultáneamente, incluso teniendo acceso a los mismos recursos).
En este artículo describo las ventajas de los distintos tipos de thread pools, así como la manera de utilizarlos.

Antes
Un escenario común en algunas aplicaciones de alta concurrencia es por ejemplo estar recibiendo mensajes o peticiones de un sistema externo, o de usuarios del sistema, etc. Dichas peticiones se deben atender tan pronto como sea posible. Las opciones son:

  1. Procesar cada tarea en un thread nuevo
  2. Procesar todas las tareas de manera secuencial en un thread

Sessiones...

Hola a todos, estoy desarrollado una aplicacion en jsp quiero saber como puedo impedir que un usuario entre al sistema dos veces con la misma cuente al mismo tiempo...

Lo que queiro es que si un usuario entra al sistema con su login u su password e intenta entrar nuevamente con la misma cuenta, teniendo habierta la sesion anterior, el sistema indique que no puede entrar ya que el ese usuario tiene ua sesion abierta..

Sobre foros para materiales de certificación y bolsa de empleo

Como habrán notado, desde el viernes tenemos una categoría más en los Foros de Discusión: Certificaciones

La categoría cuenta con 4 sub-foros, uno para cada tipo de certificación que ofrece Sun para Java, al menos las más famosas y recurridas: Java Programmer, Java Developer, Web Component Developer y Enterprise Architect.

Para subir material o archivos pueden usar el sistema de archivos adjuntos del sitio, o alguna de las alternativas de hosting de archivos listadas
aquí
(recomiendo mediafile)

Comenzaré yo a subir material desde ahora, esperemos que todos colaboren para que quienes quieran certificarse tengan un apoyo más
de parte de esta comunidad.

Por otra parte, hay un nuevo foro también para Ofertas de Empleo, con base a lo discutido en los foros sobre este tema. Con este foro se planea no dejar fuera las oportunidades que algún miembro de esta comunidad podría aprovechar, pero en orden, teniendo ese tipo de cosas en un lugar específico.

Se agradecen sus comentarios. Saludos a todos.

Hola

Hola a todos. Soy estudiante de la carrera de Ing. en Sistemas Computacionales del Instituto Tecnologico de Toluca, me gusta todo lo que tenga que ver con la programacion Java y el software libre.

Tengo tiempo buscando alguna comunidad que se interese por este magnifico lenguaje de programacion, pero en español solo habia encontrado paginas de España. Me da gusto que que haya Mexicanos que les agrade este lenguaje y que sean tan generosos en dar algo de su tiempo para realizar este tipo de portales, espero participar activamente y de buena manera. Saludos.

atte. javadicto

Manipular imagenes

Hola amigos de la mejor comunidad en mexico, tengo un problema que espero que me puedan ayudar, les explico, tengo un JPanel en el cual al darle doble click lanzo un JFileChooser, busco un archivo JPG en la estructura de directorios( LINUX), hasta ahora ya puedo cargar la imagen en el JPanel pero lo que mas me interesa es colocar la imagen en el JPanel( el cual tiene un tamaño predeterminado) y que esta imagen ocupe solamente el tamaño del JPanel( reducirla en caso de que la imagen sea muy grande, pero k se muestre la imagen completa), si alguien tiene una ide de como realizar este tipo de apliacion o alguna pag, o que clases me recomiendad usar se los agradeceria muchisimo.

atte
jorge

Detalles de las pestañas

Bueno... no sabía lo que pasaría al trabajar intentando hacer un editor de texto con soporte para pestañas. Para ello, no se me ocurrió nada mejor que utilizar un JEditorPane como el control de texto, y un JScrollPane para dar el soporte de scrollbars. Luego, era el JScrollPane el que iba dentro del JTabbedPane.

Cuando quise rescatar el JEditorPane, tuve problemas: se obtiene el JScrollPane, de el se obtiene el JViewPort, y de ese último el JEditorPane... Por razones de tiempo no agrego código ahora, pero pronto lo haré. Además, debo revisar qué pasa usando un JTextArea en lugar de un JEditorPane, y si el JTextArea soporta el cambio de color, para hacer un resaltado de sintaxis.

Usando HashMaps en vez de cursores en BD.

Hola a todos, antes que nada una disculpa por no haber podido hacer acto de presencia en este proyecto, pero por diversas ocupaciones no me fue posible, pero aquí estamos y como diría un buen amigo mió ¡ARRREEE!

Este primer post surgió de un problema en el trabajo con los tiempos de respuesta que nos arrojaba la ejecución de query para un reporte, debido al arduo filtrado que le fue aplicado y a la necesidad de diversos niveles de detalle y agrupaciones, llegamos a un query de 1000 líneas y cerca de 9 horas en ejecución.

Muchos de ustedes se estarán preguntando --Porque diablos no separaron el query y lo convirtieron en un Store Procedure y se quitan de problemas ¿?-- La respuesta es que debido a la premura del tiempo (tomar en cuenta el tiempo que un versionamiento a producción implica en ambientes de alto control), el hecho de que el query ya estaba armado, probado, y que en ocasiones o no se tiene el conocimiento de PL/SQL o no se tienen los permisos correspondientes. Así que tras cavilarlo un rato nos decidimos a resolver el problema desde java.

Distribuir contenido