martes, 10 de junio de 2008

XML (Extensible Markup Language)

Es un metalenguaje extensible de etiquetas desarrollado por el World Wide Web Consortium (W3C) no es realmente un lenguaje en particular, sino una manera de definir lenguajes para diferentes necesidades. Se propone como un estándar para el intercambio de información estructurada entre diferentes plataformas (Bases de datos, editores de texto, hojas de cálculo, etc).

Ventajas del XML:
  • Es extensible, lo que quiere decir que una vez diseñado un lenguaje y puesto en producción, igual es posible extenderlo con la adición de nuevas etiquetas.
  • El analizador es un componente estándar, no es necesario crear un analizador específico para cada lenguaje.
  • Mejora la compatibilidad entre aplicaciones.
XML busca dar solución al problema de expresar información estructurada de la manera más abstracta y reutilizable posible (se compone de partes bien definidas). Entonces se tiene un árbol de pedazos de información.
Una etiqueta consiste en una marca hecha en el documento, que señala una porción de éste como un elemento. Un pedazo de información con un sentido claro y definido.

Un documento XML está formado por el prólogo (es opcional) y por el cuerpo del documento (obligatorio y único).

http://es.wikipedia.org/wiki/XML

http://www.w3schools.com/xml/default.asp


lunes, 9 de junio de 2008

Instalando ANT

Del link http://apache.rediris.es/ant/binaries/apache-ant-1.7.0-bin.zip nos bajamos el ANT.

Descomprimimos el archivo en la carpeta java (se puede poner donde queramos). Ahora copiamos la ruta donde está el bin de ANT (C:\Archivos de programa\Java\apache-ant-1.7.0\bin) y la ponemos en el path de windows: menu contextual sobre Mi PC/propiedades/Opciones avanzadas/variables de entorno/variables del sistema/Path. Aceptamos y abrimos una consola MSDOS y ejecutamos "ant -version" para ver que todo ha ido bien.

(Aquí hay un problema en el que hay que sustituir el archivo tools.jar de la carpeta lib de jdk -C:\Archivos de programa\Java\jdk1.6.0_06\lib- y se lo pasamos a C:\Archivos de programa\Java\jre1.6.0_06\lib).

Ahora nos creamos un archivo donde queramos llamado "build.xml" con el siguiente código este..

En la consola, con la ruta donde hayamos creado el archivo, ejecutamos el comando ant y nos aparece por pantalla la parte del código donde "echo message".

Ejemplo:

C:\Workspace\eticom-jdbc>ant
Buildfile: build.xml

help:
[echo]
[echo] -----------------------------------
[echo]
[echo] Posibles tareas en este archivo ant:
[echo]
[echo] populate --> Inserta filas en la tabla links
[echo] clear --> Borra las filas de la tabla links

BUILD SUCCESSFUL
Total time: 0 seconds


En definitiva, esto consiste en construir el archivo build.xml donde se compondran tareas (tasks) a las que llamaremos desde nuestro código, y que se irán definiendo según nos vayan haciendo falta. Hay una tarea por defecto (default = taskx). Estas tareas se procesan por orden, pasando por todas ellas. Ant incluye algunas tareas básicas, como compilacion y eliminación de ficheros temporales, pero pero podemos crear las que nos hagan falta.

Dos tutoriales:
http://www.marioalberto.com.mx/articulos/java_ant_basico.php (Relacionado con la instalación) http://www.javahispano.org/contenidos/es/introduccrion_a_ant/ (Relacionado con la introducción a ANT)

jueves, 5 de junio de 2008

Transformar el ResultSet en Colección Link

A través del Administrador de MySQL, en la base de datos delicious creamos una tabla "personas" con dos campos (id -int- y nombre -varchar(50)-).

En el proyecto "eticom-jdbc", para hacer una consulta:
  1. Cargamos el driver
  2. Creamos la conexión
  3. Creamos el Statement
  4. Obtenemos ResultSet -> statement.executeQuery(sql); (para consulta) statement.executeUpdate(sql); (para actualizar) statement.executeInsert(sql); (para insertar)
  5. Mostrar datos
Ejemplo

¿Qué hacer con un ResultSet?
es obligatorio realizar el bucle siguiente...

    List links = new ArrayList();
    while(rs.next()){
        Link link = new Link();
        link.id = rs.getInt(0);
        link.nombre = rs.getString(1);
        links.add(link);
    }

..
.para guardar los valores del ResultSet (sin forma) en una Colección de List con los datos ya transformados en un modelo de objetos (con sus propiedades) de tipo Link.
Otra forma de hacerlo más rápida y avanzada es mediante el O.R.M. (Object Relational Mapping -> Object se refiere a la POO, Relational a la relación de JAVA y POO, y Mapping a la información del mapeo), que es sinónimo de Hybernate: Ejemplo.

martes, 3 de junio de 2008

Instalando MySQL

Extraemos el archivo .zip "mysql-5.0.45-win32.zip", y lo ejecutamos. Le decimos configuración tipica y siguiente hasta "Data usage" en la que seleccionamos "Multifunctional Database". Después siguiente hasta Windows options, en la que también activamos "Include Bin Directory in Windows PATH".. y siguiente y final.

Ahora ejecutamos el "mysql-gui-tools-5.0-r12-win32.msi".. es todo siguiente..

De MySQL emplearemos "MySQL Administrator" y "MySQL Query Browser". Cuando iniciamos la aplicación (MySQL Administrator) hay que meterle:

Server host: localhost
Username: root
Password: ******

pinchamos en el apartado Catalogs. En Schemata con el menú contextual "Create New Schema". Le damos como nombre "delicious". Creamos una tabla con dos campos "ID" y "nombre", y "Apply changes".
Si le damos a menú contextual "Edit Table Data" se nos abre el "My SQL Query Browser" y ahí le podemos añadir información a la tabla, pinchando en el botón "Edit".
______________

Para acceder a MySQL desde la consola:

mysql --user=root -p
show database

lunes, 2 de junio de 2008

Librería SWING

En swing, los botones y demás componentes no heredan de Component, sino directamente de Container. Su paquete es "javax.swing".
El botón que cierra la ventana est´automáticamente habilitado, y los controles/componentes no se incluyen directamente al objeto container sino al objeto "ContentPane" del container:

JComponent.getContentPane().add(x);