Driver JDBC Type 5 Abril 30, 2010
Publicado por lineadecodigo en : Noticias Web , Añadir un comenario
Progress Software ha lanzado unos nuevos driver JDBC type 5. Los cuales se añaden a los 4 tipos de drivers ya existentes.
Y es que desde 1998, año desde el que están disponibles los driver type 4, no se había trabajado en nuevas especificaciones. Y ya iba siendo hora de tener una pequeña evolución.
Progress Software ha enfocado los driver JDBC type 5 a intentar subsanar las carencias de los driver type 4:
- Rendimiento lento o inconsistente, el rendimiento en ciertos casos es pobre y no es consistente entre diferentes tipos de plataformas.
- Funcionalidades inaccesibles o no disponibles, el ajuste del driver es muy crítico y en ciertas ocasiones se necesita acceso al código JDBC.
- Excesivo consumo de CPU y de memoria, en el tiempo de acceso a datos.
- Restricciones en el despliegue de aplicaciones, se requieren de diferentes archivos JAR. Incluso, en algunos casos, el despliegue de DLL. Limitando los entornos en los que se puede desplegar.
- Implementaciones propietarias, en ciertas implementaciones el soporte de transaccionalidad XA o el soporte de campos CLOB/BLOB requieren código propietario.
Progress Software tiene disponible los driver type 5 para para Oracle, SQL Server, DB2, Sybase, MySQL e Informix. Habrá que probarlos.
Vía: Application Development Trends
|- Foro sobre JDBCUsando la API de Twitter4j en java Abril 27, 2010
Publicado por Pablo Ruiz en : Java , 10 comentariosHola nuevamente acá estoy posteando de nuevo cómo cambiar el estado de Twitter con java gracias a la API Twitter4J.
Primeramente tenemos que tener descargarnos la API Twitter4J 2.1.2 del siguiente link…
http://twitter4j.org/en/twitter4j-2.1.2.zip
Ya descargada la añadimos a nuestro IDE en mi caso uso Netbeans:
- Botón derecho sobre “libraries (Librerías)”
- ADD jar/folder (Agregar)
- Seleccionamos el archivo que descargamos anteriormente del link antes mencionado
Y listo ya tenemos acceso a la API Twitter4J de twitter…
Comenzaremos creando nuestra clase base llamada TwitterJ.java y hacemos las importaciones correspondientes
import java.util.List; import twitter4j.*;
Ahora creamos un atributo privado del tipo Twitter llamado mi_twitter
private Twitter mi_twier;
Siguiendo creamos nuestro honorable constructor de la siguiente manera
try { mi_twitter = new Twitter(userName, password); mi_twitter.verifyCredentials(); } catch (TwitterException ex) { } }
Información Constructor:
- Dos parámetros String que contendran usuario-password respectivamente
- Creación de objeto con los datos ingresados como parámetros (usuario,password)
- Verificación de credenciales (si los datos ingresados son correctos)
Ahora crearemos el método que nos dará un nuevo tweet ó cambiará el estado
try { this.mi_twitter.update(tweet); } }
Información método nuevoTweet(String tweet):
- String tweet será el nuevo estado que enviaremos
- llamamos al método update de la clase Twitter y le damos de parámetro lo ingresado en el argumento de método creado
Ahora crearemos el método que nos devolverá nuestro actual estado
String estadoActual = ""; try { List<Status> statusList = mi_twitter.getUserTimeline(); } catch (TwitterException ex) { } return "Mi Estado es: "+estadoActual; }
Información método getEstado( ):
- creamos una variable que contendrá el estado
- creamos un List que contendrá lo que venga del método de la clase Twitter ( getUserTimeLine )
- nuestra variable antes creada tendrá el valor de la lista en la posición o
- retornamos nuestra variable
Ahora crearemos un método que nos devolverá la lista de contactos en twitter
public void listaDeContactos() { try { List<User> friends = mi_twitter.getFriends(); for (User f : friends) { } }
Información método listaDeContactos():
- Creamos un List que contendrá lo que venga del método de la clase Twitter ( getStatusText )
- Recorrimos la lista “friends” que debería tener los amigos ó contactos
- Vamos imprimiendo mientras se recorre el for each el USUARIO y ESTADO
La API Twitter4J consta con muchos mas métodos y cosas por el estilo, yo solo te daré la base para comenzar… puedes hacer una gráfica mas atractiva y usar esta clase para aquello…
Bueno ahora haremos nuestro main:
TwitterJ t = new TwitterJ("mi_user","Mi_password"); t.nuevoTweet("Ejemplo para Lineadecodigo.com"); t.listaDeContactos(); }
Información método main(String args[]):
- Creamos la instancia a nuestra clase antes creada y a la vez pasamos sus dos argumentos ó parámetros en éste caso USUARIO,PASSWORD
- usamos el método nuevoTweet para cambiar el estado actual pasando por parámetro el nuevo tweet
- Llamamos a el método listaDeContactos() que debería imprimir la lista de contactos ó amigos
- imprimimos el estado actual
Como ya ven es demasiado simple hacer un programa que funcione con Twitter…
Interfaz opcional usando la clase antes creada ( Proyecto para Netbeans )
puedes descargarla de acá : Descargar de aquí(opcional)
|- Descargar el código|- Reportar error en el código
|- Foro sobre Java
Reproducir música por java Abril 24, 2010
Publicado por Pablo Ruiz en : Java , 28 comentariosPara ésto utilizaré las librerías de javazoom. En concreto basicplayer3.0.jar. Soy de pocas palabras. Vamos a código:
Creamos nuestra honorable clase llamada Reproductor.java
public class Reproductor{...}
Añadiremos los imports correspondientes
import javazoom.jlgui.basicplayer.BasicPlayer; import java.io.File;
Creamos el atributo del tipo BasicPlayer
private BasicPlayer player;
y luego lo creamos en el constructor
player = new BasicPlayer();
Bueno ahora vienen los métodos como el play, stop, pausa, resumen, etc…
player.play(); } } player.pause(); } player.resume(); } player.stop(); }
Con éstos métodos tendríamos ya formado nuestro reproductor…
Así que ahora a usarlo. No creo que tengan mayor problema con lo siguiente:
try { Reproductor mi_reproductor = new Reproductor(); mi_reproductor.AbrirFichero("c:/mi_archivo_de_musica.mp3"); mi_reproductor.Play(); } }
Como ven es demasiado simple reproducir música en java… pero a la vez éste método quizás no sea tan atractivo, ya que no posee una interfaz bonita ni nada, pero la base es ésta y la interfaz es a gusto de cada uno…
Pero mostrándoles un poco lo que se puede hacer, les dejaré adjunto un reproductor que hice hace algún tiempo haber si les agrada
MP3seth: Descargar aquí
Alguno que se interese en la aplicación gráfica que pida el código y lo envío sin ningún problema.
|- Descargar el código|- Reportar error en el código
|- Foro sobre Java
Fechas y monedas multi-pais con ASP Abril 22, 2010
Publicado por lineadecodigo en : ASP , Añadir un comenarioEl atributo LCID del objeto Session nos puede dar un juego muy grande en ASP a la hora de realizar aplicaciones que tengan que controlar el formato de las fechas y las monedas de diferentes países. Como ya vimos en el artículo Localización en ASP.
Y es que, modificando el contenido de dicha variable, conseguimos que sea el propio lenguaje, quien, mediante sus propias funciones de manejo de fechas y monedas, presente la información de la forma correcta.
Por defecto, el valor del atributo, es el valor en el que esté configurado el servidor. Este valor, suele ser, el valor del país origen del servidor. Para mostrar por pantalla el valor del atributo, vale con mostrarle por consola:
<%= Session.LCID %>
Antes de comenzar con el ejemplo, tenemos que aprender a utilizar dos funciones. La primera será Date. Esta función será la que nos devuelva la fecha de hoy. La segunda es FormatCurrency(cantidad). En este caso se formatea, atendiendo a el valor de LCID, la cantidad indicada como parámetro de la función.
Lo primero que vamos a hacer es volcar los valores por defecto de la fecha y moneda.
<h2>Valores por defecto (<%=Session.LCID%>)</h2> <% response.write("Fecha: " & date() & "") response.write("Moneda: " & FormatCurrency(50000)) %>
El resto de valores que nos queda por conocer, para nuestro ejemplo, son los siguientes:
- 1034 - Español
- 2057 - Reino Unido
- 1033 - Estados Unidos
- 1036 - Francia
Y ahora solo hay que ir asignando uno a uno dichos valores al atributo LCID, y en medio, volcando los datos:
|- Descargar el código
Session.LCID=1033
|- Reportar error en el código
|- Foro sobre ASP
Localización en ASP Abril 18, 2010
Publicado por lineadecodigo en : ASP , Hasta ahora 1 comentarioSiempre es interesante saber en que país estar instalado el servidor de cara a gestionar la localización de los usuarios. O, por lo menos, como han configurado la "Configuración Regional" de nuestro servidor. Ya que esto va a afectar a la forma en la que se representan las fechas y monedas dentro de nuestra página, si es que estamos utilizando las funciones que nos proporciona el lenguaje para el manejo de las mismas.
Lo más seguro que queramos modificar la configuración por defecto e incluso adaptarla dependiendo del tipo de usuario que se conecte a nuestra web.
Y es que cuando subimos nuestras páginas ASP a ciertos servidores vemos que, las fechas aparecen en perfecto formato ingles mm/dd/aa. Y claro, que si tu página es de público mayoritario hispano-hablante, no está muy bien, que se diga.
El coste de cambiar esto no os llevará más allá de 1 minuto, ya que lo único que tenemos que hacer es incluir la siguiente línea de código en el fichero global.asa
Session.LCID = 1034
La propiedad LCID del objeto Session nos permite configurar una localización o región específica para una determinada sesión.
El 1034 es el valor por defecto para España. Ahora que si manejasemos en algún sitio las monedas, tendríamos un pequeño problema. Ya que los países sudamericanos utilizan diferentes monedas: peso chileno, peso mexicano,...
En este sentido podemos utilizar una estructura de selección para determinar en que país nos encontramos
select case Session.LCID case 1034 Response.Write("España") case 11274 Response.Write("Argentina") case 16394 Response.Write("Bolivia") case 13322 Response.Write("Chile") case 9226 Response.Write("Colombia") case 5130 Response.Write("Costa Rica") case 7178 Response.Write("Republica Dominicana") case 12298 Response.Write("Ecuador") case 4106 Response.Write("Guatemala") case else Response.Write("Valor no contemplado") end select
Si tenemos usuarios en diferentes regiones que acceden a nuestra página, siempre podemos consultar la información y cargarla cuando inicien la sesión en el método Session_OnStart.
|- Descargar el código|- Reportar error en el código
|- Foro sobre ASP
Acceder al XML con SAX Abril 17, 2010
Publicado por lineadecodigo en : Java , Añadir un comenarioSAX es un parser que nos permite analizar documentos XML. Su caracteristica principal es que está basado en eventos. Eventos como inicio de etiqueta, fin de etiqueta, contenido de etiqueta,.....
SAX nos proporcionará ese conjunto de eventos y nosostros deberemos de ver qué realizar en cada uno de ellos.
En este primer ejemplo lo que haremos será simplemente volcar el contenido de cada una de las etiquetas que se encuentre el analizador. Para ello echaremos mano del evento characters...
public void characters(char[] ch, int start, int len) throws SAXException{...}
Este evento es disparado cada vez que el analizador se encuentra el contenido de una etiqueta. Los parámetros que recibe son: la cadena encontrada como cadena de caracteres (ch), el inicio en dicha cadena (start) y la longitud de la misma (len). Hay que tener cuidado y controlar que no se produzca la excepción SAXException.
Nosotros volcaremos el contenido del elemento a pantalla...
El conjunto de eventos posibles a manejar se deberán de agrupar en lo que SAX denomina Handler o Manejador. La clase que tiene los eventos por defecto es DefaultHandler. A si que nosostros crearemos un “manejador” que herede de DefaultHandler, en el cual implementaremos la funcionalidad que nos interese de los eventos.
public class MiManejador extends DefaultHandler {}
Una vez que nos hemos creado el manejador, deberemos de crear la aplicación que utilice dicho manejador para analizar el documento. Esta será una aplicación Java normal de consola.
Lo primero que necesitamos es el parser (analizador). Para ello deberemos de instanciar una factoría de parsers, a la cual le pediremos que nos porporcione uno para analizar nuestro documento XML.
SAXParserFactory factory = SAXParserFactory.newInstance(); parser = factory.newSAXParser();
Posteriormente deberemos de configurar el analizardor. Para ello le indicaremos cual es el fichero que contiene el XML y el manejador que hemos implementado para analizar dicho XML.
|- Descargar el código
MiManejador manejador = new MiManejador(); parser.parse(is, manejador);
|- Reportar error en el código
|- Foro sobre SAX



