lunes, 20 de abril de 2009

JAXWS

Es el API java para el desarrollo de WS XML, forma parte de la distribución J2EE de Sun y al igual que otras APIs utiliza las anotaciones para el despliegue de las aplicación.

JAX-WS es una tecnología para la construcción de servicios web y los clientes que se comunican a través de XML.

JAX-WS permite a los desarrolladores escribir mensajes orientados a RPC, así como orientado a servicios web.

En JAX-WS, una llamada a procedimiento remoto está representado por un protocolo basado en XML, como SOAP.
La especificación SOAP define sobre la estructura, la codificación de normas y convenciones de representación de llamadas a procedimiento remoto y las respuestas.
Estas llamadas y respuestas se transmiten como mensajes SOAP (archivos XML) a través de HTTP.

Aunque los mensajes SOAP son complejas, la API de JAX-WS oculta esta complejidad de la aplicación de desarrolladores En el lado del servidor, el desarrollador especifica los procedimientos remotos mediante la definición de métodos de una interfaz escrita en el lenguaje de programación Java. El desarrollador también los códigos de una o más clases que implementan esos métodos.

Los programas cliente también son fáciles de código. Un cliente crea un proxy (un objeto que representa el servicio) y luego simplemente invoca los métodos en el proxy. Con JAX-WS, el desarrollador no generar o analizar mensajes SOAP. Es el tiempo de ejecución JAX-WS sistema que convierte las llamadas a la API y las respuestas y los mensajes de SOAP.

Con JAX-WS, los clientes y los servicios web tienen una gran ventaja: la independencia de la plataforma de lenguaje de programación Java. Además, JAX-WS no es restrictiva: JAX-WS un cliente puede acceder a un servicio web que no se está ejecutando en la plataforma Java, y viceversa.

Esta flexibilidad es posible gracias a JAX-WS utiliza tecnologías definidas por el World Wide Web Consortium (W3C): HTTP, SOAP, y el Lenguaje de descripción de servicios Web (WSDL)

WSDL especifica un formato XML para describir un servicio como un conjunto de parámetros de funcionamiento en los mensajes.



lunes, 13 de abril de 2009

Comandos DDL

  • CREATE Utilizado para crear nuevas tablas, campos e índices.
  • DROP Empleado para eliminar tablas e índices.
  • ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos.

Comandos DML

  • SELECT Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado.
  • INSERT Utilizado para cargar lotes de datos en la base de datos en una única operación.
  • UPDATE Utilizado para modificar los valores de los campos y registros especificados.
  • DELETE Utilizado para eliminar registros de una tabla de una base de datos.

Introducción Sql

Es un lenguaje de consulta estructurado que utilizado por el motor de bases de datos de Microsoft Jet.SQL

Existen dos tipos de comandos para este lenguaje:
  1. Comandos DDL --> que permiten crear y definir nuevas bases de datos, campos e índices.
  2. Comandos DML --> que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos.

Índices

Un índice no es más que una orden para que el servidor de base de datos haga una reorganización física de la tabla respecto a unas normas (índices). Pero claro, si sobre una tabla con muchos índices hacemos muchos INSERT/UPDATE/DELETE (operaciones DML), eso implica un coste muy importante. Con lo que puede al final ir más lento con índices que sin ellos.

Hay que tener en cuenta:

  • Las consultas más frecuentes deberían tener índices. El que hace la aplicación sabe cuál es más frecuente.
  • Esto es muy importante con campos VARCHAR, cuya búsqueda no indexada es horrible (FULL SCAN).
  • No hay que tener demasiados índices. Nunca 20, por ejemplo. A ser posible, máximo 6 ó 7. Se puede buscar qué consultas son más frecuentes y priorizar.
  • Una PK implica un índice.
  • Una FK también implica un índice. Es decir, si tenéis una tabla NOTICIA con un ID_TEMA que es FK a la PK de una tabla TEMA (ID_TEMA)... ya tenéis un índice sobre ID_TEMA, no hay que volver a hacerlo.
  • los índices deben hacerse para campos que normalmente no deberían permitir valores nulos

Esto es una explicación muy buena de un compañero de mi trabajo.