Ir al contenido principal

Entradas

Mostrando entradas de noviembre, 2011

Ejemplo logback

El otro día os hablaba de las bondades de logback . Como ya os dije, SFL4J es una capa de abstracción para nuestros sistemas de logging (similar a JCL) que liga una implementación concreta en el momento de la compilación. Logback es una implementación concreta de SFL4J , pero podemos utilizar SFL4J con diversas librerías de logging como log4j o   java.util.logging. En el siguiente gráfico vemos un dibujo sacado de la documentación oficial de SFL4J  en el que se muestran varios escenarios de uso de SLF4J: Escenarios de uso de SLF4J En la gráfica podemos varios escenarios: En el primer escenario ( SLF4J unbound ) no se liga ninguna implementación de SLF4J, por lo que no se escribe log. Sólo tendremos el jar slf4j-api.jar . En el segundo escenario ( SLF4J bound to logback-classic ) ligamos logback a SLF4J. Esto lo explicaremos más adelante en nuestro ejemplo. En el tercer escenario ( SLF4J bound to log4j ) ligamos log4j a SLF4J . Migrar de una aplicación en la que tenemos log4j

JAXB: Leer y escribir ficheros XML

Muchas veces en nuestras aplicaciones debemos manejar documentos XML ( Extensible Markup Language ). Este lenguaje se ha convertido en un estándar para intercambio de datos entre programas y aplicaciones a través de Internet. En un esquema XML (o  XSD ) podemos definir los elementos que pueden aparecer en un documento XML así como las relaciones entre los mismos. JAXB ( Java Architecture for XML Binding ) es un estándar Java para transformar un esquema XML (o  XSD ) en una representación a objetos java. Mediante la API de JAXB podemos mapear un objeto Java a un documento XML ( "marshall" ) y el proceso contrario, es decir, a partir de un esquema XML crear su conjunto de objeto Java asociado ( "unmarshall" ). JAXB Resumiendo lo que nos proporciona JAXB es: Generación de objetos Java a partir de un XSD a través de un compilador Proporciona capacidades de marshall/unmarshall (escribir fichero XML desde java y al contrario) Integración con Maven a través de xj

Hacer magia con un Iphone

El otro día en una de las noticias del telediario de relleno (las mejores) vi a un ilusionista haciendo una presentación con teléfonos móviles, más concretamente 3 Iphones.  Hoy leo que este personaje se llama Marco Tempest . Es suizo y aparece en la serie de televisión "The Virtual Magician" , serie que se emite en más de 50 países.  Combina la magia tradicional con las nuevas tecnologías (proyecciones de video, Iphones, Ipads...) y como resultado podemos ver actuaciones de lo más divertidas y originales. Es este video que os pongo mezcla trucos de manos con la tecnología de los IPhone. 

Interfaz Comparator. Comparadores en Java

Cuando trabajamos con las colecciones en Java a veces necesitamos ordenar primero los elementos para luego realizar una determinada acción.  Si trabajamos con objetos o tipos simples como números ( java.lang.Number, int ) o cadenas ( java.lang.String ) la ordenación es más fácil. Para ordenar un array de este tipo lo único que tenemos que hacer es utilizar la sentencia siguiente y ya tendríamos nuestro array ordenado: java.util.Arrays.sort(arrayDeNumeros); Pero imaginemos ahora que tenemos que realizar una determinada acción sobre un tipo complejo (Persona, Departamento...). Si queremos ordenar un array de objetos complejos debemos decir primero qué criterios de ordenación se deben seguir. ¿Cómo se hace esto? Pues con la interfaz java.util.Comparator . Hay dos opciones: implementar la interfaz Comparator  en la propia clase del objeto que queremos ordenar o bien hacerlo en una clase diferente. La opción más elegante es la segunda, tener clases diferentes que implementen la interf

JFreeChart. Gráficas en Java

Hace algunos años buscando una librería Java para mi proyecto de fin carrera encontré JFreeChart . Revisando el proyecto veo que ha seguido siempre activo y se sigue utilizando ampliamente entre la comunidad de desarrolladores. JFreeChart es una librería Java 100% libre creada por David Gilbert . Sirve para la creación de gráficas profesionales en nuestras aplicaciones Java. Para consultar todos los detalles podéis ir a la página  del proyecto. A continuación vamos a utilizar la librería para crear un gráfico de tipo tarta ( pie chart ) en el que se muestre el número de escaños de cada partido en las Elecciones Generales de 2011. Vamos a utilizar el IDE Eclipse aunque podemos utilizar cualquier otro. Lo primero que tenemos que hacer es crear un proyecto Java en Eclipse. Le llamamos por ejemplo  jfreechart y creamos un paquete de código fuente que se llame es.jpascu.graficos . Proyecto en Eclipse Después descargamos las siguientes librerías de la página  de descargas del pr

Sistema D'Hondt. Fórmula de votación en España

Aprovechando las recientes elecciones de ayer se me ocurrió investigar sobre el sistema de votaciones en España. El sistema D'Hont fue el utilizado para repartir los escaños entre los partidos en las elecciones de ayer, sistema  en vigor desde 1985 de acuerdo a la Ley Orgánica del Regimen Electoral General (LOREG).  Un video ilustrativo del funcionamiento de este sistema se puede ver en Microsiervos y os lo dejo a continuación: Entre otros países, se utiliza en  Argentina, Austria, Bélgica, Bulgaria, Colombia, Croacia, Ecuador, Eslovenia, España, Finlandia, Francia, Grecia, Guatemala, Irlanda, Israel, Japón,Países Bajos, Paraguay, Polonia, Portugal, República Checa, Suiza, Turquía, República Dominicana, Uruguay y Venezuela . T ras escrutar todos los votos, se calcula una serie de  divisores  para cada lista. La fórmula de los  divisores  es  V/N , donde  V  representa el número total de votos recibidos por la lista, y  N  representa cada uno de los números enteros de 1 has

Configurar programas inicio Windows

Hoy voy a explicar un truco para que todos podamos configurar los programas que se inician en nuestro querido   Windows . Normalmente todos nosotros vamos instalando programas y programas y llega un día en el que no sabemos ni lo que hay en nuestro ordenador.  De esto nos damos cuenta cuando un día lo encendemos y cuando ha arrancado nos ha salido barba, por lo que nos enfadamos más que la vena del cuello de María Patiño. En fin, vayamos al truco. Los pasos para controlar lo que se inicia son: Vamos al botón Inicio y  pulsamos Ejecutar . En la ventana que nos aparece tecleamos msconfig y pulsamos Aceptar . En la nueva ventana vamos a la pestaña Inicio y desmarcamos los programas que no queremos que se ejecuten al iniciar Windows.  Nos encontraremos con muchos procesos que no sabemos ni a qué aplicaciones corresponden.  Otros serán más fáciles de identificar.  Configurar programas inicio Para finalizar hacemos click en Aceptar y después en Reiniciar o Salir sin reiniciar. Para

Programas para redimensionar imágenes. Image Resizer Power Toy

A veces necesitamos modificar el tamaño de las imágenes que tenemos a más resolución o menos, dependiendo de nuestra necesidad en cuestión .  Por ejemplo, imaginemos que hemos realizado una serie de fotos de un evento y queremos subirlas a un nuevo album de Picassa o de Facebook pero a una menor resolución de la existente porque ocupan demasiado tamaño.  O bien tenemos una foto que queremos colgar en nuestra web pero está a muy baja resolución y la queremos aumentar. Para realizar todas estas tareas podemos utilizar el Gimp o Photoshop , que tienen la opción de Escalar una Imagen  con diferentes métodos para obtener una mayor o menor calidad. Escalar imagen con GIMP Existen otros muchos programas con los que puedes realizar esto de una forma sencilla. Un programa que me ha gustado mucho para redimensionar imágenes es Image Resizer Power Toy de Microsoft . Este programa se integra con los menus del propio Windows . Si seleccionamos una o varias imagenes con el Explorador de Win

Tableizer. Tablas en Blogger.

Somos muchos los blogueros que utilizamos Blogger . Todos los que lo utilizamos, hemos sufrido alguna vez el tener que insertar tablas, que no es especialmente fácil con el editor de Blogger .  La opción más extendida es ir a la pestaña de Edición de HTML y crearla mediante las etiquetas HTML <table> , <tr> y <td>,  tuneandola si se quiere con estilos CSS. Un ejemplo de como se hace esto se puede  ver aquí .    Otra opción que descubrí hace poco es utilizar Tableizer . En esta web existe un campo donde podemos pegar nuestras tablas procedentes de Excel y Open Calc (hojas de cálculo) y nos permite transformarlas en código HTML que podemos utilizar posteriormente en Blogger . Se pueden configurar opciones como el color del encabezado , el tamaño y el tipo de fuente de la tabla. También se puede copiar de alguna página en HTML una tabla, pegarla en Excel y generar el código con  Tableizer . Espero que os sirva de ayuda para vuestros posts. Salu2.

SuperTruper, una aplicación para comparar precios

El otro día estaba hablando con un compañero de trabajo sobre aplicaciones que no estuvieran hechas todavía, que fueran originales y que cubrieran alguna necesidad de nuestra sociedad. En estos tiempos de crisis que nos toca vivir, a mí se me ocurrió una genial idea que seguro os gustará a todos. Le dije a mi colega que podíamos hacer una aplicación en la que todos los usuarios puedan ir introduciendo los precios de los diferentes productos en diferentes supermercados. En esta aplicación se podrían consultar los precios de artículos o productos en diferentes establecimientos comerciales. De esta forma, podríamos elegir donde queremos ir a hacer la compra para ahorrarnos unos eurillos . Por supuesto, la aplicación también debería permitir hacer nuestra lista de la compra para saber en qué establecimientos nos saldría más barato comprar en ese preciso momento. Por ejemplo, imaginemos que queremos comprar una serie de productos de limpieza. Con nuestra maravillosa aplicación haríamo