Está en la página 1de 48

INSTITUTO TECNOLGICO DE CUAUTLA

MATERIA: NEGOCIOS ELECTRNICOS

PROFESOR: JOS ARNULFO CORONA CALVARIO

INTEGRANTE MIGDALE PANTALEN HERNNDEZ RUIZ DAZ GABRIELA SALAZAR BAHENA GABRIEL SNCHEZ OGLA YANETH

MAYO 2011

NDICE
1.1 QUE ES UN SITIO WEB?............................................................................8 1.2 PLATAFORMAS PARA SITIOS WEB.............................................................11 1.3 TIPOS DE SERVICIOS WEB........................................................................12 COMPONENTES DE MICROSOFT.Net............................................................14 1.4 APACHE....................................................................................................15 MARCO TEORICO............................................................................................15 El servidor HTTP Apache es un servidor web HTTP de cdigo abierto para plataformas Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el protocolo HTTP/1.1 y la nocin de sitio virtual. Cuando comenz su desarrollo en 1995 se bas inicialmente en cdigo del popular NCSA HTTP 1.3, pero ms tarde fue reescrito por completo. Su nombre se debe a que Behelendorf quera que tuviese la connotacin de algo que es firme y enrgico pero no agresivo, y la tribu Apache fue la ltima en rendirse al que pronto se convertira en gobierno de EEUU, y en esos momentos la preocupacin de su grupo era que llegasen las empresas y "civilizasen" el paisaje que haban creado los primeros ingenieros de internet. ....................................................................................................................... 15 El servidor HTTP Apache es un servidor web HTTP de cdigo abierto para plataformas Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el protocolo HTTP/1.1[1] y la nocin de sitio virtual. Cuando comenz su desarrollo en 1995 se bas inicialmente en cdigo del popular NCSA HTTPd 1.3, pero ms tarde fue reescrito por completo. Su nombre se debe a que Behelendorf quera que tuviese la connotacin de algo que es firme y enrgico pero no agresivo, y la tribu Apache fue la ltima en rendirse al que pronto se convertira en gobierno de EEUU, y en esos momentos la preocupacin de su grupo era que llegasen las empresas y "civilizasen" el paisaje que haban creado los primeros ingenieros de internet. ....................................................................................................................... 15 Ventajas......................................................................................................... 16 Modular.......................................................................................................... 16 Cdigo abierto................................................................................................16 Multi-plataforma.............................................................................................16 Extensible...................................................................................................... 16 Popular (fcil conseguir ayuda/soporte).........................................................16 Mdulos..........................................................................................................16 La arquitectura del servidor Apache es muy modular. El servidor consta de una seccin core y diversos mdulos que aportan mucha de la funcionalidad 2

que podra considerarse bsica para un servidor web. Algunos de estos mdulos son:..................................................................................................16 mod_ssl - Comunicaciones Seguras va TLS...................................................16 mod_rewrite - reescritura de direcciones (generalmente utilizado para transformar pginas dinmicas como php en pginas estticas html para as engaar a los navegantes o a los motores de bsqueda en cuanto a cmo fueron desarrolladas estas pginas)..............................................................16 mod_dav - Soporte del protocolo WebDAV (RFC 2518)..................................16 mod_deflate - Compresin transparente con el algoritmo deflate del contenido enviado al cliente..........................................................................16 mod_auth_ldap - Permite autentificar usuarios contra un servidor LDAP.......16 mod_proxy_ajp - Conector para enlazar con el servidor Jakarta Tomcat de pginas dinmicas en Java (servlets y JSP)....................................................16 El servidor de base puede ser extendido con la inclusin de mdulos externos entre los cuales se encuentran:.....................................................................16 mod_cband - Control de trfico y limitador de ancho de banda.....................16 mod_perl - Pginas dinmicas en Perl............................................................16 mod_php - Pginas dinmicas en PHP............................................................16 mod_python - Pginas dinmicas en Python..................................................16 mod_rexx - Pginas dinmicas en REXX y Object REXX.................................16 mod_ruby - Pginas dinmicas en Ruby.........................................................16 mod_aspdotnet - Pginas dinmicas en .NET de Microsoft (Mdulo retirado). ....................................................................................................................... 16 mod_mono - Pginas dinmicas en Mono......................................................16 mod_security - Filtrado a nivel de aplicacin, para seguridad.......................16 Apache es usado principalmente para enviar pginas web estticas y dinmicas en la World Wide Web. Muchas aplicaciones web estn diseadas asumiendo como ambiente de implantacin a Apache, o que utilizarn caractersticas propias de este servidor web.................................................16 Apache es el componente de servidor web en la popular plataforma de aplicaciones LAMP, junto a MySQL y los lenguajes de programacin PHP/Perl/Python (y ahora tambin Ruby).......................................................16 Este servidor web es redistribuido como parte de varios paquetes propietarios de software, incluyendo la base de datos Oracle y el IBM WebSphere application server. Mac OS X integra apache como parte de su propio servidor web y como soporte de su servidor de aplicaciones

WebObjects. Es soportado de alguna manera por Borland en las herramientas de desarrollo Kylix y Delphi............................................................................17 Apache es incluido con Novell NetWare 6.5, donde es el servidor web por defecto, y en muchas distribuciones Linux. Apache es usado para muchas otras tareas donde el contenido necesita ser puesto a disposicin en una forma segura y confiable. Un ejemplo es al momento de compartir archivos desde una computadora personal hacia Internet. Un usuario que tiene Apache instalado en su escritorio puede colocar arbitrariamente archivos en la raz de documentos de Apache, desde donde pueden ser compartidos. Los programadores de aplicaciones web a veces utilizan una versin local de Apache con el fin de previsualizar y probar cdigo mientras ste es desarrollado...................................................................................................17 Microsoft Internet Information Services (IIS) es el principal competidor de Apache, as como Sun Java System Web Server de Sun Microsystems y un anfitrin de otras aplicaciones como Zeus Web Server. Algunos de los ms grandes sitios web del mundo estn ejecutndose sobre Apache. La capa frontal (front end) del motor de bsqueda Google est basado en una versin modificada de Apache, denominada Google Web Server (GWS). Muchos proyectos de Wikimedia tambin se ejecutan sobre servidores web Apache. La licencia de software bajo la cual el software de la fundacin Apache es distribuido es una parte distintiva de la historia de Apache HTTP Server y de la comunidad de cdigo abierto. La Licencia Apache permite la distribucin de derivados de cdigo abierto y cerrado a partir de su cdigo fuente original........................................................................................................... 17 La Free Software Foundation no considera a la Licencia Apache como compatible con la versin 2 de la GNU General Public License (GPL), en la cual el software licenciado bajo la Apache License no puede ser integrado con software distribuido bajo la GPL: Este es software libre pero es incompatible con la GPL.................................................................................17 La Apache Software License es incompatible con la GPL porque tiene un requerimiento especfico que no est incluido en la GPL: tiene ciertos casos de terminacin de patentes que la GPL no requiere. No consideramos que dichos casos de terminacin de patentes son inherentemente una mala idea, pero a pesar de ello son incompatibles con la GNU GPL................................17 Sin embargo, la versin 3 de la GPL incluye una provisin (Seccin 7e) que le permite ser compatible con licencias que tienen clusulas de represalia de patentes, incluyendo a la Licencia Apache. El nombre Apache es una marca registrada y puede ser slo utilizada con el permiso expreso del dueo de la marca. El servidor Apache es un software que esta estructurado en mdulos ....................................................................................................................... 17 La configuracin de cada mdulo se hace mediante la configuracin de las directivas que estn contenidas dentro del mdulo. Los mdulos del Apache 4

se pueden clasificar en tres categoras: Mdulos Base: Mdulo con las funciones bsicas del Apache Mdulos Multiproceso: son los responsables de la unin con los puertos de la mquina, acepando las peticiones y enviando a los hijos a atender a las peticiones Mdulos Adicionales: Cualquier otro mdulo que le aada una funcionalidad al servidor. Entre las caractersticas principales del Apache se encuentran:..........................................................18 Es un servidor Web potente, flexible y ajustado al HTTP/1.1.........................18 Es altamente configurable y extensible.........................................................18 Puede ser ajustado a travs de la definicin de mdulos empleando su propio API (Aplication Programming Interface).........................................................18 Provee todo su cdigo fuente de forma libre y se distribuye bajo una licencia no restrictiva..................................................................................................18 Se ejecuta en diversas plataformas operativas tales como: Windows 9x/NT, 18 Macintosh, Novell NetWare, OS/2, Linux y la mayora de los Unix existentes: IRIX,............................................................................................................... 18 Solaris, HPUX, SCO, FreeBSD, NetBSD, AIX, Digital Unix, etc.........................18 Se desarrolla de forma acelerada estimulando la retroalimentacin desde sus usuarios a travs de nuevas ideas, reportes de errores y parches................18 Apache significa ``A PAtCHy sErver'', o sea se basa en un cdigo y un conjunto de ficheros ``parches''. Otros desarrolladores relacionan su nombre con el de las tribus nativas americanas de Apaches......................................18 Implementa muchas posibilidades frecuentemente demandadas, tales como: ....................................................................................................................... 18 Bases de datos DBM para autenticacin........................................................18 Permiten establecer fcilmente la proteccin de documentos a travs de....18 passwords para una gran cantidad de usuarios sin daar el funcionamiento del servidor....................................................................................................18 Respuestas adaptables a los errores o problemas.........................................18 Se pueden definir ficheros o scripts de tipo CGI11.3 que respondan ante la ocurrencia de errores internos o en las solicitudes realizadas.......................18 Directiva para definir mltiples ndices..........................................................18 Se utiliza cuando se solicitan directorios por parte de los clientes a partir de lo cual se puede buscar en estos y devolver un documento ndice cuyo nombre puede ser por ejemplo: index.html, index.cgi o default.html. o Ilimitadas y flexibles posibilidades de redireccionamiento y definicin de alias para los URLs.................................................................................................18 Apache no tiene un lmite establecido para definir alias y redireccionamientos que pueden ser declarados en sus ficheros de configuracin........................18 5

Negociacin del contenido de las respuestas................................................18 Apache es capaz de ofrecer la mejor representacin de la informacin accedida de acuerdo con las capacidades del cliente solicitante..................18 El protocolo utilizado para la transferencia de hipertexto es HTTP (HiperText Transfer Protocol) que est basado en el envo de mensajes y establece el conjunto de normas mediante las cuales se envan las peticiones de acceso a una web y la respuesta de esa web. HTTP es un protocolo sin estado, es decir, no recuerda nada relativo a conexiones anteriores a la actual. La conexin slo tiene la duracin correspondiente a la transmisin de la pgina solicitada si la encuentra, y si no la encuentra devuelve un cdigo de error. 19 El servidor web Apache 2.2 proporciona contenidos al cliente web o navegador como: 1. Pginas estticas: es el uso ms generalizado que se hace de un servidor web. De esta forma se transfieren archivos HTML, imgenes, etc y no se requiere un servidor muy potente en lo que al hardware se refiere. 2. Pginas dinmicas: la informacin que muestran las pginas que sirve Apache cambia ya que se obtiene a partir de consultas a bases de datos u otras fuentes de datos. Son, por tanto, pginas con contenido dinmico, cambiante.....................................................................19 Requerimientos. Como sabemos cada usuario requiere de diversos componentes tanto hardware como software, en esta ocasin los requerimientos son:.......................................................................................19 HARDWARE: El servidor fue instalado para mayor comodidad en una laptop la cual contiene las siguientes caractersticas:..................................................19 Servidor DHCP junto con sus paquetes..........................................................19 Procesador AMD Turion 64 X2 o superior.......................................................19 SOFTWARE.....................................................................................................19 Sistema operativo: UBUNTU 10.04.................................................................19 Actualizacin de las paqueteras de DHCP (dhcpd, dhcp3 de ISC, udhcpd, etc.)............................................................................................................... 19 Servidor DNS ya instalado..............................................................................19 Desarrollo.......................................................................................................19 Antes que nada se tiene que descargar los paquetes desde Internet, entrando al men Sistema, Administracin y eligiendo la opcin de Gestor de Paquetes Synaptic. Figura 1...........................................................................19 ....................................................................................................................... 20 Posteriormente se marca para descargar e instalar el PHP5, Apache2, Libapache2-mod-php5 como se muestra en la Figura 2................................20 ....................................................................................................................... 20 6

Figura 2..........................................................................................................20 En esta pantalla se muestra que los cambios van a ser marcados para despus instalarse, Figura3...........................................................................20 ....................................................................................................................... 21 Figura 3..........................................................................................................21 Solo se le dan en marcar y a continuacin continua con la instalacin. En esta pantalla se muestra que ya se estn descargando las actualizaciones en el sistema. Figura 4...........................................................................................21 .................................................................................................................. 21 A continuacin muestra una pantalla en la cual se estn instalando todos los paquetes Figura 5..................................................................................21 ................................................................................................................... 21 Figura 5.......................................................................................................21 Con esto ya tenemos Instalado Apache en nuestro ordenador. Posteriormente restauraremos el demonio de apache2, con la siguiente instruccin y verificar que se ha instalado exitosamente como se muestra en la figura 6...............................................................................................21 Sudo /etc/init.d/apache2 restart.................................................................21 ................................................................................................................... 22 Figura 6.......................................................................................................22 Como se muestra nos tiene que marcar OK, y con esto ya estamos listos para poder utilizarlo como Servidor Web, y comenzar a programar Paginas. ................................................................................................................... 22 1.4.1 APACHE TOMCAT ..............................................................................22 1.4.2 MONO............................................................................................... 22 HISTORIA.....................................................................................................23 1.4.3 IIS.......................................................................................................23 1.5 DIFERENCIAS ENTRE SITIOS WEB ............................................................24 BASES DE DATOS PARA COMERCIO ELECTRNICO ..........................................25 2.1 REQUERIMIENTOS DE UNA BASE DE DATOS PARA COMERCIO ELECTRONICO ...............................................................................................25 2.2 CLASIFICACION DE LOS SGBD: ................................................................26 2.3 TIPOS DE SGBD........................................................................................27 Sistemas de Gestin de Bases de Datos (SGBD)............................................27

2.4 VENTAJAS Y DESVENTAJAS DE LAS B.D....................................................30 2.5 SISTEMAS ORIENTADOS A DATOS: ..........................................................31 QUE ES UNA BASE DE DATOS? .................................................................31 SISTEMAS DE ADMINISTRACIN DE BASES DE DATOS (DBMS) ........................31 LENGUAJES DEL DBMS................................................................................33 2.6 ODBC INTRODUCCION CONECTIVIDAD ABIERTA DE BASES DE DATOS....34 2.7 TECNOLOGIAS 3GL (Lenguajes de Programacin General, Java C++, C#, etc) y 4GL (lenguajes de Propsito Especifico)..............................................35 3.1 SELECCIN DE PLATAFORMA ..................................................................37 BENEFICIOS PARA USAR ALGUNA PLATAFORMA EN PARTICULAR ..............37 3.2 EVALUACION Y SELECCION DE SOFTWARE PARA SER UTILIZADO............37 SELECCION DEL SOFTWARE .......................................................................38 ANALISIS DE LAS NECESIDADES .................................................................38 EVALUACIN Y SELECCIN DE SOFTWARE.................................................38 3.3 INSTALACION DE LOS PROGRAMAS ........................................................39 TOMCAT Y MYSQL PARA WINDOWS ............................................................39 3.4 CONFIGURACION DEL SOFTWARE ...........................................................40 APLICACIONES DE COMERCIO ELECTRONICO...................................................42 4.1 DESARROLLOS PARA INTERNET CON JAVA, JSP Y MYSQL.........................42 POR QU LOS DESARROLLADORES DE SOFTWARE ELIGEN LA TECNOLOGA JAVA ........................................................................................................... 43 DEFINIENDO ALGUNOS CONCEPTOS...........................................................43 ENTRANDO EN EL CURSO:..........................................................................44 4.2 PHP Y MYSQL ...........................................................................................46 4.3 ASP.NET/MYSQL.......................................................................................47 ASP.NET...................................................................................................... 47

INTRODUCCION A LOS SITIOS WEB 1.1 QUE ES UN SITIO WEB? Un sitio web (en ingls: web site) es un conjunto de pginas web, tpicamente comunes a un dominio de Internet o subdominio en la rld Wide Web en Internet Una pgina web es un documento HTML/XHTML accesible generalmente mediante el protocolo HTTP de Internet. Todos los sitios web pblicamente accesibles constituyen una gigantesca "World Wide Web" de informacin. A las
8

pginas de un sitio web se accede desde una URL raz comn llamada portada, que normalmente reside en el mismo servidor fsico. Las URLs organizan las pginas en una jerarqua, aunque los hiperenlaces entre ellas controlan cmo el lector percibe la estructura general y cmo el trfico web fluye entre las diferentes partes de los sitios. Algunos sitios web requieren una subscripcin para acceder a algunos o todos sus contenidos. Ejemplos de sitios con subscripcin incluyen muchos sitios de pornografa en Internet, parte de muchos sitios de noticias, sitios de juegos, foros, servicios de correo electrnico basados en web y sitios que proporcionan datos de bolsa en tiempo real.

Un sitio web puede ser el trabajo de una persona, una empresa u otra organizacin y est tpicamente dedicada a algn tema particular o propsito. Cualquier sitio web puede contener hiperenlaces a cualquier otro sitio web, de manera que la distincin entre sitios individuales, percebido por el usuario, puede ser a veces borroso. No debemos confundir sitio web con pgina web, esta ltima es slo un archivo HTML, y forma parte de un sitio web. Al ingresar una direccin, como por ejemplo www.wikimedia.org, siempre se est haciendo referencia a un sitio web, que tiene una pgina HTML inicial, que es lo primero que se visualiza. La bsqueda en Internet se realiza asociando el DNS ingresado con la direccin IP del servidor que contenga el sitio web en el cual est la pgina HTML buscada. Los sitios web estn escritos en HTML (Hyper Text Markup Language), o dinmicamente convertidos a ste y se acceden usando un software llamado navegador web, tambin conocido como un cliente HTTP. Los sitios web pueden ser visualizados o accedidos desde un abanico de dispositvos con disponibilidad de Internet como computadoras personales, computadores portatiles, PDAs y telefnos mviles. Un sitio web est alojado en una computadora conocida como servidor web, tambin llamada servidor HTTP, y estos trminos tambin pueden referirse al software que se ejecuta en esta computadora y que recupera y entrega las pginas de un sitio web en respuesta a peticiones del usuario.

NIDAD Apache es el programa ms comnmente usado como servidor web (segn las estadsticas de Netcraft) y el Internet Information Services (IIS) de Microsoft tambin se usa comnmente. Un sitio web esttico es uno que tiene contenido que no se espera que cambie frecuentemente y se mantiene manualmente por alguna persona o personas que usan algn tipo de programa editor. Hay dos amplias categoras de programas editores usados para este propsito que son * Editores de texto como Notepad, donde el HTML se manipulata directamente en el programa editor o * Editores WYSIWYG como por ejemplo Microsoft FrontPage y Adobe Dreamweaver, donde el sitio se edita usando una interfaz GUI y el HTML subyacente se genera automticamente con el programa editor. Un sitio web dinmico es uno que puede tener cambios frecuentes en la informacin. Cuando el servidor web recibe una peticin para una determinada pgina de un sitio web, la pgina se genera automticamente por el software como respuesta directa a la peticin de la pgina; Por lo tanto abriendo muchas posibilidades incluyendo por ejemplo: El sitio puede mostrar el estado actual de un dilogo entre usuarios, monitorizar una situacin cambiante, o proporcionar informacin personalizada de alguna manera a los requisitos del usuario individual. Hay un amplio abanico de sistemas de software, como el lenguaje de programacin PHP, Active Server Pages (ASP), y Java Server Pages (JSP) que estn disponibles para generar sistemas de sitios web dinmicos. Los sitios dinmicos a menudo incluyen contenido que se recupera de una o ms bases de datos o usando tecnologas basadas en XML como por ejemplo el el RSS. El contenido esttico puede tambin ser generado de manera dinmica peridicamente o si occurren ciertas condiciones para la regeneracin para evitar
10

la prdida de rendimiento de iniciar el motor dinmico para cada usuario o para cada conexin. Hay plugins disponibles para navegadores, que se usan para mostrar contenido activo como Flash, Shockwave o applets escritos en Java. El HTML dinmico tambin proporciona para los usuarios interactividad y el elemento de actualizacin en tiempo real entre pginas web (i.e, las pginas no tienen que cargarse o recargarse para efectuar cualquier cambio), principalmente usando el DOM y JavaScript, el soporte de los cuales est integrado en la mayora de navegadores web modernos. Este tema es muy amplio y cada da hay nuevos modelos de pginas muy profesionales. ltimamente, dado el compromiso social de muchos gobiernos, se recomienda que los Sitios Web cumplan unas normas de accesibilidad para que stos, puedan ser visitados y utilizados por el mayor nmero de personas posibles independientemente de sus limitaciones fsicas o las derivadas de su entorno. La accesibilidad web viene recogida en las Pautas de Accesibilidad al Contenido Web WCAG 1.0 del W3C. 1.2 PLATAFORMAS PARA SITIOS WEB Plataformas de Servidor (Server Platforms): Un trmino usado a menudo como sinnimo de sistema operativo, la plataforma es el hardware o software subyacentes para un sistema, es decir, el motor que dirige el servidor. Servidores de Aplicaciones (Application Servers): Designados a veces como un tipo de middleware (software que conecta dos aplicaciones), los servidores de aplicaciones ocupan una gran parte del territorio entre los servidores de bases de datos y el usuario, y a menudo los conectan. Servidores de Audio/Video (Audio/Video Servers): Los servidores de Audio/Video aaden capacidades multimedia a los sitios web permitindoles mostrar contenido multimedia en forma de flujo continuo (streaming) desde el servidor. Servidores de Chat (Chat Servers): Los servidores de chat permiten intercambiar informacin a una gran cantidad de usuarios ofreciendo la posibilidad de llevar a cabo discusiones en tiempo real. Servidores de Fax (Fax Servers): Un servidor de fax es una solucin ideal para organizaciones que tratan de reducir el uso del telfono pero necesitan enviar documentos por fax. Servidores FTP (FTP Servers): Uno de los servicios ms antiguos de Internet, File Transfer Protocol permite mover uno o ms archivos...Leer ms Servidores Groupware (Groupware Servers): Un servidor groupware es un software diseado para permitir colaborar a los usuarios, sin importar la localizacin, va Internet o va Intranet corporativo y trabajar juntos en una atmsfera virtual. Servidores IRC (IRC Servers):

11

Otra opcin para usuarios que buscan la discusin en tiempo real, Internet Relay Chat consiste en varias redes de servidores separadas que permiten que los usuarios conecten el uno al otro va una red IRC. Servidores de Listas (List Servers): Los servidores de listas ofrecen una manera mejor de manejar listas de correo electrnico, bien sean discusiones interactivas abiertas al pblico o listas unidireccionales de anuncios, boletines de noticias o publicidad. Servidores de Correo (Mail Servers): Casi tan ubicuos y cruciales como los servidores web, los servidores de correo mueven y almacenan el correo electrnico a travs de las redes corporativas (va LANs y WANs) y a travs de Internet. Servidores de Noticias (News Servers): Los servidores de noticias actan como fuente de distribucin y entrega para los millares de grupos de noticias pblicos actualmente accesibles a travs de la red de noticias USENET. Servidores Proxy (Proxy Servers): Los servidores proxy se sitan entre un programa del cliente (tpicamente un navegador) y un servidor externo (tpicamente otro servidor web) para filtrar peticiones, mejorar el funcionamiento y compartir conexiones. Servidores Telnet (Telnet Servers): Un servidor telnet permite a los usuarios entrar en un ordenador husped y realizar tareas como si estuviera trabajando directamente en ese ordenador. 1.3 TIPOS DE SERVICIOS WEB

12

Un servicio web es un servicio, con un interfaz definido y conocido, al que se puede acceder a travs de internet. Igual que una pgina web est definida por un URL (Uniform Resource Locator), un servicio web est definido por un URI (Uniform Resource Identification) y por su interfaz, a travs del cual se puede acceder a l. Igual que una pgina web puede ofrecer cotizaciones de la bolsa, un servicio web que haga lo mismo presentar un interfaz para que se pueda acceder fcilmente, una vez que se conozca el interfaz, a la aplicacin. De esta forma, las aplicaciones se convierten en clientes que integran servicios web procedentes de diferentes proveedores, y adems, se abre la posibilidad de que se cobre por uso del servicio, no por cada copia de la aplicacin vendida. Este es uno de los aspectos que ms gusta a Microsoft: la posibilidad de acabar de una vez por todas con la piratera, a base de alojar partes importantes de las aplicaciones en sus propios servidores, no en el ordenador del cliente. Los servicios web se dividen en servicios de transporte (los protocolos del nivel ms bajo, que codifican la informacin independientemente de su formato, y que pueden ser comunes a otros servicios), de mensajera, de descripcin y de descubrimiento. En la parte ms baja se encuentran los servicios de transporte, que establecen la conexin y el puerto usado. Generalmente se usa HTTP, el mismo protocolo que
13

la WWW, pero en se puede usar tambin SMTP (el mismo protocolo que el correo electrnico), FTP (File Transfer Protocol), o BEEP (blocks extensible exchange protocol), un protocolo especfico para servicios web, que, a diferencia de los anteriores, no es cliente-servidor, sino "entre pares"; los dos ordenadores entre los que se establece la comunicacin actan como clientes y servidores a la vez. COMPONENTES DE MICROSOFT.Net El componente principal de .NET, que est en la capa ms baja de su modelo de capas, es el Common language runtime (CLR), o mquina virtual comn. Se trata de un programa, que se puede ejecutar, en principio, en cualquier sistema operativo, y que provee de una serie de servicios que se pueden usar desde diferentes lenguajes de programacin. Esta mquina virtual se ha liberado, aunque de forma limitada, dando lugar a Rotor, una implementacin de fuente compartida, y de la cual existen versiones para Windows, BSD, y, desde junio de 2002, Linux. Asimismo, hay otras implementaciones no basadas en el cdigo de Microsoft; la principal es el proyecto Mono, de Ximian, que tiene la mayor parte de las funcionalidades de Rotor. La especificacin de este CLR se quiere convertir en un stndard ECMA, de forma que pueda haber diferentes implementaciones de la misma, y diferentes lenguajes basados en ella. Los ejecutables CLR, estn escritos en un lenguaje denominado MSIL (Microsoft intermediate language), similar al Java bytecode; en principio, cualquier programa escrito en MSIL (aunque nadie escribe en MSIL, se supone que lo hacen los compiladores) puede ejecutarse en cualquier sistema operativo donde funcione un CLR; el formato de esos ficheros se denomina portable executable o PE. Adems, el fichero ejecutable contiene metadatos, que informan sobre las funciones y tipos que implementan. Pero el concepto de ejecutable va un poco ms all: en .NET se usan ensamblajes (assemblies), que pueden incluir partes de cdigo, datos, cdigos de seguridad, y todo lo necesario para convertirlo en cdigo mvil y fiable (en el sentido de que est firmado por alguien), que se pueda mover por la Internet. Los ensamblajes, a su vez, contienen metadatos, en un apartado denominado manifiesto (igual que sucede en los .jar de Java). Estos ejecutables y ensamblajes pueden ser generados a partir de diferentes lenguajes de alto nivel, pero los lenguajes deben de incluir dos cosas: un sistema comn de tipos (CTS, common type system) y un sistema comn de lenguajes (CLS, common language specification). El sistema comn de tipos indica los tipos que tiene que soportar el lenguaje: tipos valor (por ejemplo, un entero; una variable entera contiene un valor) y tipos referencia, que apuntan a estructuras de datos dinmicas. Sin embargo, a diferencia de los lenguajes habituales, donde el tipo fundamental es un tipo valor, y las referencias son
14

accesorias, y deben desreferenciarse para trabajar con ellas, en .NET el tipo fundamental es un objeto, y, de hecho, cualquier tipo valor se puede convertir en una referencia "encajndolo" (boxing). Por ejemplo: int i = 1; // i es de tipo valor object box = i // box es de tipo referencia

1.4 APACHE MARCO TEORICO El servidor HTTP Apache es un servidor web HTTP de cdigo abierto para plataformas Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el protocolo HTTP/1.1 y la nocin de sitio virtual. Cuando comenz su desarrollo en 1995 se bas inicialmente en cdigo del popular NCSA HTTP 1.3, pero ms tarde fue reescrito por completo. Su nombre se debe a que Behelendorf quera que tuviese la connotacin de algo que es firme y enrgico pero no agresivo, y la tribu Apache fue la ltima en rendirse al que pronto se convertira en gobierno de EEUU, y en esos momentos la preocupacin de su grupo era que llegasen las empresas y "civilizasen" el paisaje que haban creado los primeros ingenieros de internet. El servidor HTTP Apache es un servidor web HTTP de cdigo abierto para plataformas Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el protocolo HTTP/1.1[1] y la nocin de sitio virtual. Cuando comenz su desarrollo en 1995 se bas inicialmente en cdigo del popular NCSA HTTPd 1.3, pero ms tarde fue reescrito por completo. Su nombre se debe a que Behelendorf quera que tuviese la connotacin de algo que es firme y enrgico pero no agresivo, y la tribu Apache fue la ltima en rendirse al que pronto se convertira en gobierno de EEUU, y en esos momentos la preocupacin de su grupo era que llegasen las empresas y "civilizasen" el paisaje que haban creado los primeros ingenieros de internet.
15

Ventajas Modular Cdigo abierto Multi-plataforma Extensible Popular (fcil conseguir ayuda/soporte) Mdulos La arquitectura del servidor Apache es muy modular. El servidor consta de una seccin core y diversos mdulos que aportan mucha de la funcionalidad que podra considerarse bsica para un servidor web. Algunos de estos mdulos son: mod_ssl - Comunicaciones Seguras va TLS. mod_rewrite - reescritura de direcciones (generalmente utilizado para transformar pginas dinmicas como php en pginas estticas html para as engaar a los navegantes o a los motores de bsqueda en cuanto a cmo fueron desarrolladas estas pginas). mod_dav - Soporte del protocolo WebDAV (RFC 2518). mod_deflate - Compresin transparente con el algoritmo deflate del contenido enviado al cliente. mod_auth_ldap - Permite autentificar usuarios contra un servidor LDAP. mod_proxy_ajp - Conector para enlazar con el servidor Jakarta Tomcat de pginas dinmicas en Java (servlets y JSP). El servidor de base puede ser extendido con la inclusin de mdulos externos entre los cuales se encuentran: mod_cband - Control de trfico y limitador de ancho de banda. mod_perl - Pginas dinmicas en Perl. mod_php - Pginas dinmicas en PHP. mod_python - Pginas dinmicas en Python. mod_rexx - Pginas dinmicas en REXX y Object REXX. mod_ruby - Pginas dinmicas en Ruby. mod_aspdotnet - Pginas dinmicas en .NET de Microsoft (Mdulo retirado). mod_mono - Pginas dinmicas en Mono mod_security - Filtrado a nivel de aplicacin, para seguridad. Apache es usado principalmente para enviar pginas web estticas y dinmicas en la World Wide Web. Muchas aplicaciones web estn diseadas asumiendo como ambiente de implantacin a Apache, o que utilizarn caractersticas propias de este servidor web. Apache es el componente de servidor web en la popular plataforma de aplicaciones LAMP, junto a MySQL y los lenguajes de programacin PHP/Perl/Python (y ahora tambin Ruby).
16

Este servidor web es redistribuido como parte de varios paquetes propietarios de software, incluyendo la base de datos Oracle y el IBM WebSphere application server. Mac OS X integra apache como parte de su propio servidor web y como soporte de su servidor de aplicaciones WebObjects. Es soportado de alguna manera por Borland en las herramientas de desarrollo Kylix y Delphi. Apache es incluido con Novell NetWare 6.5, donde es el servidor web por defecto, y en muchas distribuciones Linux. Apache es usado para muchas otras tareas donde el contenido necesita ser puesto a disposicin en una forma segura y confiable. Un ejemplo es al momento de compartir archivos desde una computadora personal hacia Internet. Un usuario que tiene Apache instalado en su escritorio puede colocar arbitrariamente archivos en la raz de documentos de Apache, desde donde pueden ser compartidos. Los programadores de aplicaciones web a veces utilizan una versin local de Apache con el fin de previsualizar y probar cdigo mientras ste es desarrollado. Microsoft Internet Information Services (IIS) es el principal competidor de Apache, as como Sun Java System Web Server de Sun Microsystems y un anfitrin de otras aplicaciones como Zeus Web Server. Algunos de los ms grandes sitios web del mundo estn ejecutndose sobre Apache. La capa frontal (front end) del motor de bsqueda Google est basado en una versin modificada de Apache, denominada Google Web Server (GWS). Muchos proyectos de Wikimedia tambin se ejecutan sobre servidores web Apache. La licencia de software bajo la cual el software de la fundacin Apache es distribuido es una parte distintiva de la historia de Apache HTTP Server y de la comunidad de cdigo abierto. La Licencia Apache permite la distribucin de derivados de cdigo abierto y cerrado a partir de su cdigo fuente original. La Free Software Foundation no considera a la Licencia Apache como compatible con la versin 2 de la GNU General Public License (GPL), en la cual el software licenciado bajo la Apache License no puede ser integrado con software distribuido bajo la GPL: Este es software libre pero es incompatible con la GPL. La Apache Software License es incompatible con la GPL porque tiene un requerimiento especfico que no est incluido en la GPL: tiene ciertos casos de terminacin de patentes que la GPL no requiere. No consideramos que dichos casos de terminacin de patentes son inherentemente una mala idea, pero a pesar de ello son incompatibles con la GNU GPL. Sin embargo, la versin 3 de la GPL incluye una provisin (Seccin 7e) que le permite ser compatible con licencias que tienen clusulas de represalia de patentes, incluyendo a la Licencia Apache. El nombre Apache es una marca
17

registrada y puede ser slo utilizada con el permiso expreso del dueo de la marca. El servidor Apache es un software que esta estructurado en mdulos La configuracin de cada mdulo se hace mediante la configuracin de las directivas que estn contenidas dentro del mdulo. Los mdulos del Apache se pueden clasificar en tres categoras: Mdulos Base: Mdulo con las funciones bsicas del Apache Mdulos Multiproceso: son los responsables de la unin con los puertos de la mquina, acepando las peticiones y enviando a los hijos a atender a las peticiones Mdulos Adicionales: Cualquier otro mdulo que le aada una funcionalidad al servidor. Entre las caractersticas principales del Apache se encuentran: Es un servidor Web potente, flexible y ajustado al HTTP/1.1 Es altamente configurable y extensible. Puede ser ajustado a travs de la definicin de mdulos empleando su propio API (Aplication Programming Interface). Provee todo su cdigo fuente de forma libre y se distribuye bajo una licencia no restrictiva. Se ejecuta en diversas plataformas operativas tales como: Windows 9x/NT, Macintosh, Novell NetWare, OS/2, Linux y la mayora de los Unix existentes: IRIX, Solaris, HPUX, SCO, FreeBSD, NetBSD, AIX, Digital Unix, etc. Se desarrolla de forma acelerada estimulando la retroalimentacin desde sus usuarios a travs de nuevas ideas, reportes de errores y parches. Apache significa ``A PAtCHy sErver'', o sea se basa en un cdigo y un conjunto de ficheros ``parches''. Otros desarrolladores relacionan su nombre con el de las tribus nativas americanas de Apaches. Implementa muchas posibilidades frecuentemente demandadas, tales como: Bases de datos DBM para autenticacin. Permiten establecer fcilmente la proteccin de documentos a travs de passwords para una gran cantidad de usuarios sin daar el funcionamiento del servidor. Respuestas adaptables a los errores o problemas. Se pueden definir ficheros o scripts de tipo CGI11.3 que respondan ante la ocurrencia de errores internos o en las solicitudes realizadas. Directiva para definir mltiples ndices. Se utiliza cuando se solicitan directorios por parte de los clientes a partir de lo cual se puede buscar en estos y devolver un documento ndice cuyo nombre puede ser por ejemplo: index.html, index.cgi o default.html. o Ilimitadas y flexibles posibilidades de redireccionamiento y definicin de alias para los URLs. Apache no tiene un lmite establecido para definir alias y redireccionamientos que pueden ser declarados en sus ficheros de configuracin. Negociacin del contenido de las respuestas. Apache es capaz de ofrecer la mejor representacin de la informacin accedida de acuerdo con las capacidades del cliente solicitante.
18

El protocolo utilizado para la transferencia de hipertexto es HTTP (HiperText Transfer Protocol) que est basado en el envo de mensajes y establece el conjunto de normas mediante las cuales se envan las peticiones de acceso a una web y la respuesta de esa web. HTTP es un protocolo sin estado, es decir, no recuerda nada relativo a conexiones anteriores a la actual. La conexin slo tiene la duracin correspondiente a la transmisin de la pgina solicitada si la encuentra, y si no la encuentra devuelve un cdigo de error. El servidor web Apache 2.2 proporciona contenidos al cliente web o navegador como: 1. Pginas estticas: es el uso ms generalizado que se hace de un servidor web. De esta forma se transfieren archivos HTML, imgenes, etc y no se requiere un servidor muy potente en lo que al hardware se refiere. 2. Pginas dinmicas: la informacin que muestran las pginas que sirve Apache cambia ya que se obtiene a partir de consultas a bases de datos u otras fuentes de datos. Son, por tanto, pginas con contenido dinmico, cambiante. Requerimientos. Como sabemos cada usuario requiere de diversos componentes tanto hardware como software, en esta ocasin los requerimientos son: HARDWARE: El servidor fue instalado para mayor comodidad en una laptop la cual contiene las siguientes caractersticas: Servidor DHCP junto con sus paquetes. Procesador AMD Turion 64 X2 o superior. SOFTWARE Sistema operativo: UBUNTU 10.04 Actualizacin de las paqueteras de DHCP (dhcpd, dhcp3 de ISC, udhcpd, etc.) Servidor DNS ya instalado. Desarrollo Antes que nada se tiene que descargar los paquetes desde Internet, entrando al men Sistema, Administracin y eligiendo la opcin de Gestor de Paquetes Synaptic. Figura 1.

19

Posteriormente se marca para descargar e instalar el PHP5, Apache2, Figura 1 Libapache2-mod-php5 como se muestra en la Figura 2.

Figura 2. En esta pantalla se muestra que los cambios van a ser marcados para despus instalarse, Figura3.

20

Figura 3. Solo se le dan en marcar y a continuacin continua con la instalacin. En esta pantalla se muestra que ya se estn descargando las actualizaciones en el sistema. Figura 4.

A continuacin muestra una pantalla en la cual se estn instalando todos los paquetes Figura 5.

Figura 5. Con esto ya tenemos Instalado Apache en nuestro ordenador. Posteriormente restauraremos el demonio de apache2, con la siguiente instruccin y verificar que se ha instalado exitosamente como se muestra en la figura 6. Sudo /etc/init.d/apache2 restart

21

Figura 6. Como se muestra nos tiene que marcar OK, y con esto ya estamos listos para poder utilizarlo como Servidor Web, y comenzar a programar Paginas. 1.4.1 APACHE TOMCAT Tomcat es un contenedor de servlets (es lo que necesitamos para ejecutar JSP y Servlets) creado por la fundacin Apache dentro del proyecto Jakarta. Aunque se puede utilizar como servidor web no est tan optimizado como el servidor web de la misma fundacin, Apache. El siguiente tutorial tiene como objetivo mostrar cmo lograr que las peticiones a Apache se redirijan a Tomcat utilizando un conector (en este caso jk). A lo largo del tutorial se compilarn los paquetes a partir del cdigo fuente, en lugar de utilizar precompilados, por lo que debera poder seguirse facilmente utilizando cualquier distribucin. 1.4.2 MONO Mono es el nombre de un proyecto de cdigo abierto iniciado por Ximian y actualmente impulsado por Novell (tras su adquisicin de Ximian) para crear un grupo de herramientas libres, basadas en GNU/Linux y compatibles con .NET segn lo especificado por el ECMA. Mono posee importantes componentes tiles para desarrollar software: Una mquina virtual de lenguaje comn de infraestructura (CLI) que contiene un cargador de clases, un compilador en tiempo de ejecucin (JIT), y unas rutinas de recoleccin de memoria. Una biblioteca de clases que puede funcionar en cualquier lenguaje que funcione en el CLR (Common Language Runtime). Un compilador para el lenguaje C#, MonoBasic (la versin para mono de Visual Basic), Java y Python. El CLR y el Sistema de tipos comn (CTS) permite que la aplicacin y las bibliotecas sean escritas en una amplia variedad de lenguajes diferentes que compilen para byte code Esto significa por ejemplo, que si defines una clase que haga una manipulacin algebraica en C#, esa clase puede ser reutilizada en cualquier lenguaje que soporte el "CLI". Puede crear una clase en C#, una subclase en C++ e instanciar esa clase en un programa en Eiffel.

22

Un sistema de objetos nico, sistema de hilos, bibliotecas de clases y sistema recolector de memoria pueden ser compartidos por todos estos lenguajes. Es un proyecto independiente de la plataforma. Actualmente Mono corre sobre Linux, FreeBSD, UNIX, Mac OS X, Solaris y plataformas Windows. Existe un proyecto similar, llamado Portable.NET, es parte del proyecto dotGNU. HISTORIA Tan pronto como Microsoft public los documentos que especifican la arquitectura .NET en diciembre de 2000, Miguel de Icaza (Co-fundador de la empresa Ximian, fundador y presidente de la GNOME Foundation) comenz a interesarse en ellos. GNOME siempre haba luchado por proporcionar facilidades al programador y una de las caractersticas ms conocidas es que existen multitud de bindings para poder utilizar cualquier lenguaje de programacin para desarrollar aplicaciones. Pero la elaboracin de dichos bindings era tremendamente laboriosa y cada vez que se realizaba un cambio en la interfaz original, era necesario cambiar todos y cada uno de los bindings. Para intentar mejorar y facilitar la reutilizacin de cdigo se realiz una implementacin de componentes, llamada Bonobo, utilizando CORBA. Pero tampoco ha tenido xito, ya que era necesario que todo el software utilizase esa caracterstica y eso no fue as. Por tanto, con .NET se abre una nueva puerta para conseguir hacer de GNOME en un futuro un escritorio mejor y ms atractivo tanto para usuarios como para programadores. Con esta tecnologa por fin se consigue lo que el proyecto GNOME siempre haba buscado, independencia del lenguaje para programar en dicho escritorio. Miguel de Icaza, despus de analizar el intrprete del byte code, advierte que no existen especificaciones. En febrero de 2001 comienza a indagar por dicha informacin en las listas de correo de .NET y al mismo tiempo comienza a trabajar en un compilador C# en cooperacin con Rhys Weatherley y Jay Freeman, el mismo fue programado en C# como un ejercicio para demostrar su potencia. En abril de 2001, la ECMA publica el formato de archivos faltante y en GUADEC (6 al 8 de abril de 2001) Icaza demuestra las habilidades de su compilador. Despus de un minucioso anlisis, donde claramente se concluye que es posible construir esa tecnologa, Ximian reasigna recursos humanos de otros proyectos y crea el equipo Mono. Aspirando a tener una herramienta que fuese un sustituto completo de la tecnologa .NET, formaron The Mono Open Source Project, el cual fue anunciado en julio de 2001, en la conferencia de OReilly. Pasaron 3 aos hasta que el 30 de junio de 2004 Mono 1.0 finalmente fue lanzado. 1.4.3 IIS Internet Information Services , IIS, es una serie de servicios para los ordenadores que funcionan con Windows. Originalmente era parte del Option Pack para Windows NT. Luego fue integrado en otros sistemas operativos de Microsoft destinados a ofrecer servicios, como Windows 2000 o Windows Server 2003.
23

Windows XP Profesional incluye una versin limitada de IIS. Los servicios que ofrece son: FTP, SMTP, NNTP y HTTP/HTTPS. Este servicio convierte a un ordenador en un servidor de Internet o Intranet es decir que en las computadoras que tienen este servicio instalado se pueden publicar pginas web tanto local como remotamente (servidor web). El servidor web se basa en varios mdulos que le dan capacidad para procesar distintos tipos de pginas, por ejemplo Microsoft incluye los de Active Server Pages (ASP) y ASP.NET. Tambin pueden ser incluidos los de otros fabricantes, como PHP o Perl. Versiones IIS 1.0, Windows NT 3.51 Service Pack 3 IIS 2.0, Windows NT 4.0 IIS 3.0, Windows NT 4.0 Service Pack 3 IIS 4.0, Windows NT 4.0 Option Pack IIS 5.0, Windows 2000 IIS 5.1, Windows XP Professional IIS 6.0, Windows Server 2003 y Windows XP Professional x64 Edition IIS 7.0, Windows Vista y Windows Server 2008 Historia IIS fue inicialmente lanzado como un conjunto de servicios basados en Internet para Windows NT 3.51. IIS 2.0 sigui agregando soporte para el sistema operativo Windows NT 4.0 e IIS 3.0 introdujo las Pginas activas de servidor, esta tecnologa es una plataforma de scripting dinmico. IIS 4.0 elimin el soporte para el protocolo Gopher y fue puesto con Windows NT como un CD-ROM de "Paquete Opcional" separado. La versin actual de IIS es la 6.0 para Windows Server 2003 e IIS 5.1 para Windows XP Professional. IIS 5.1 para Windows XP es una versin compacta del IIS que soporta solo 10 conexiones simultaneas y solo un sitio web. IIS 6.0 ha agregado soporte para IPv6. Windows Vista viene con IIS 7.0 preinstalado. No limitar el nmero de conexiones permitidas pero limitar el flujo de tareas basndose en las solicitudes activas concurrentes, mejorando la usabilidad y el rendimiento en escenarios punto-a-punto (peer-to-peer). 1.5 DIFERENCIAS ENTRE SITIOS WEB Crear una pgina escribiendo el Requiere crear primero una cdigo o usando un editor plantilla general, y luego crear WYSIWYG (Lo-Que-Ves-Es-Lo- el contenido para la pgina. Que-Obtienes).
24

Crear cada pgina web por Con la plantilla construda, tan separado. solo se necesita el contenido de cada pgina para que se incluya en el esquema. Algunos proyectos como la El sitio dinmico es la eleccin interaccin con base de datos en natural. tiempo real a travs de un sitio web no son practicables con el enfoque esttico. Agregar nuevos contenidos El Nuevo contenido se inserta significa crear nuevas pginas en la estructura previamente web por separado Cualquier construda sobre plantillas, lo cambio en la estructura (el cual cual hace de cada agregado por ejemplo podra ocurrir al algo casi inmediato. Cualquier actualizar un men que aparece cambio a la estructura significa en todas las pginas) debe ser cambiar solamente la plantilla. propagado en cada pgina, lo cual requiere que se actualice cada pgina en forma manual. Las cargas al servidor son bajas, La pgina dinmica se crea en ste carga las pginas estticas el momento, con el uso de desde el disco hacia el cliente. software adicional. Esto, desde luego incrementa la carga del servidor. Dependiendo de la complejidad de la estructura del sitio ser necesario mayor o menor poder de procesamiento en el servidor. Baja, se requiere un Ms profundo , en tanto conocimiento bsico de HTML. requiere ms conocimiento de programacin, experiencia en desarrollo de base de datos, etc. BASES DE DATOS PARA COMERCIO ELECTRNICO 2.1 REQUERIMIENTOS DE UNA BASE DE DATOS PARA COMERCIO ELECTRONICO Pese a que el trmino Comercio Electrnico suene extrao, sus efectos ya son familiares en la vida cotidiana, pues sacar dinero de un cajero automtico, o consultar el saldo de la cuenta bancaria por telfono son algunas de sus consecuencias perceptibles, otras menos evidentes son las formas en que las organizaciones han incorporado el comercio electrnico en sus estrategias empresariales para asegurar su supervivencia en el nuevo mercado global. El comercio electrnico puede utilizarse en cualquier entorno en el que se intercambien documentos entre empresas: compras o adquisiciones, finanzas,
25

industria, transporte, salud, legislacin y recoleccin de ingresos o impuestos. Ya existen compaas que utilizan el comercio electrnico para desarrollar los aspectos siguientes:

Creacin de canales nuevos de mercadeo y ventas. Acceso interactivo a catlogos de productos, listas de precios y folletos publicitarios. Venta directa e interactiva de productos a los clientes. Soporte tcnico ininterrumpido, permitiendo que los clientes encuentren por s mismos, y fcilmente, respuestas a sus problemas mediante la obtencin de los archivos y programas necesarios para resolverlos.

Mediante el comercio electrnico se intercambian los documentos de las actividades empresariales entre socios comerciales. Los beneficios que se obtienen en ello son: reduccin del trabajo administrativo, transacciones comerciales ms rpidas y precisas, acceso ms fcil y rpido a la informacin, y reduccin de la necesidad de reescribir la informacin en las computadoras. Los tipos de actividad empresarial que podran beneficiarse mayormente de la incorporacin del comercio electrnico, son:

Sistemas de reservas. Centenares de agencias dispersas utilizan una base de datos compartida para acordar transacciones. Existencias comerciales. Aceleracin a nivel mundial de los contactos entre mercados de existencias. Elaboracin de pedidos. Posibilidad de referencia a distancia o verificacin por parte de una entidad neutral. Seguros. Facilita la captura de datos. Empresas que suministran a fabricantes. Ahorro de grandes cantidades de tiempo al comunicar y presentar inmediatamente la informacin que intercambian.

2.2 CLASIFICACION DE LOS SGBD: Generalmente los SGBD se clasifican atendiendo al modelo lgico en el que se basan: Atendiendo a los modelos lgicos: existen 3 tipos de modelo lgicos empleados con mayor frecuencia en los SGBD comerciales. Modelo jerrquico: fue el primer modelo de datos que apareci hacia los aos 50. Se basa en almacenar los datos en una serie de registros en forma de rbol. Para crear enlace entre los distintos registros se utilizan relaciones padre/hijo, no se permiten relaciones entre hijos porque se estructura en forma de rbol (n - m, reflexivas... Solo se permiten relaciones 1 - n). Cada registro proporciona los datos relacionados con l mismo. Este modelo proporcionaba un alto rendimiento frente a las inserciones, modificaciones y borrado de registros.

26

Modelo en red: se llama as porque representa los datos en forma una red de registros. Ya permite relaciones entre hijos. Tiene algunas desventajas; no posee lenguaje de consultas de alto nivel (haba que indicarle al SGBD como obtener los datos), no proporciona independencia fsico/lgica, tampoco abstraccin de la informacin y es un modelo de compleja manipulacin al tener que conocer las direcciones fsicas de los datos. Modelo relacional: es un modelo que se basa en el concepto de relacin que se representa grficamente con una tabla. La base de datos es percibida por el usuario mediante un conjunto de tablas cargadas con datos y las relaciones entre los datos se manifiestan en forma de asociacin. Las relaciones tienen un nombre nico y un conjunto de columnas. Atendiendo al n de usuarios: existen 2 tipos. SGBS monousuarios: atienden a un solo usuario se instala normalmente en los pcs. SGBD multiusuario: atienden a varios usuarios simultneamente. Atendiendo a la distribucin de la base de datos: hay varios tipos de arquitecturas. Cliente/servidor: Se trata de un sistema centralizado. Los SGBD centralizados pueden atender a varios usuarios pero el SGBD y la base de datos se almacenan por completo en una sola mquina servidor. En el lado servidor, el motor de la base de datos es el responsable de la admn. de los recursos, de la admn. de la seguridad, de la admn. de los datos, de las consultas y sobre todo de la integridad de los datos. Este SGBD est diseado para aceptar consultas en SQL desde una aplicacin frontal generalmente en forma de llamadas que devuelven un conjunto de resultados al cliente. En el lado cliente se instalarn unas aplicaciones para acceder a los recursos de la base de datos. Para comunicar la base de datos con el SGBD lo haremos mediante el lenguaje SQL. Los clientes realizan generalmente funciones como; captura y validacin de los datos de entrada, generacin de consultas e informes, gestin de perifricos. El cliente no conoce la lgica del servidor solamente conoce una interfaz para su acceso al servidor. El cliente no depende de la ubicacin fsica del servidor ni del S.O servidor. Los cambios en el servidor implican pocos o ningn cambio en el cliente. 2.3 TIPOS DE SGBD Sistemas de Gestin de Bases de Datos (SGBD) Los sistemas de bases de datos estn diseados para gestionar grandes volmenes de informacin. Generalmente, las bases de datos requieren gran
27

cantidad de espacio de almacenamiento, por lo que las bases de datos de las organizaciones se miden en trminos de gigabytes o terabytes de datos. Un gigabyte equivale a 1000 megabytes (un billn de bytes), y un terabyte equivale a un milln de megabytes (un trilln de bytes). Un sistema de bases de datos tiene como objetivo simplificar y facilitar el acceso a los datos y hacer que los tiempos de respuesta a las solicitudes de los usuarios sean muy reducidos. De forma sencilla, un sistema de gestin de bases de datos se puede definir como una coleccin de datos interrelacionados y un conjunto de programas para acceder a esos datos. Adoracin de Miguel lo define como conjunto coordinado de programas, procedimientos, lenguajes, etc. que suministra, tanto a los usuarios no informticos como a los analistas, programadores o al administrador, los medios necesarios para describir, recuperar y manipular los datos almacenados en la base, manteniendo su integridad, confidencialidad y seguridad. Existen dos grandes modelos de sistemas de gestin de bases de datos:

28

Sistemas de Gestin de Bases de Datos Relacionales (SGBDR)

Las bases de datos que generan se construyen con informacin muy estructurada (datos) acerca de una organizacin o empresa determinada. Cuando un usuario realiza una consulta en una base de datos relacional, el sistema presenta como resultado la respuesta exacta a lo que se busca. A este tipo de bases de datos se les denomina bases de datos relacionales, y a los sistemas que las gestionan, Sistemas de Gestin de Bases de Datos Relacionales (SGBDR). Ejemplos de bases de datos relacionales son las bases de datos de cuentas y clientes de un banco o las bases de datos de productos creadas por los centros comerciales o las libreras para llevar un control de sus ventas. Ejemplos de sistemas de gestin de bases de datos relacionales son Access, Dbase, Informix, entre otros

Sistemas de Gestin de Bases de Datos Documentales (SGBDD) o Sistemas de Recuperacin de Informacin (SRI)

Las bases de datos que generan se construyen con informacin no estructurada tipo texto (documentos) sobre uno o varios temas. Cuando un usuario realiza una consulta en una base de datos documental, el sistema presenta como resultado, no una respuesta exacta, sino documentos tiles para satisfacer la pregunta del usuario. A este tipo de bases de datos se les denomina bases de datos documentales, y a los sistemas que las gestionan, Sistemas de Gestin de Bases de Datos Documentales (SGBDD) o Sistemas de Recuperacin de Informacin (SRI). Ejemplos de bases de datos documentales son las bases de datos bibliogrficas, bases de datos de prensa, bases de datos de informes de una empresa, etc. Ejemplos de sistemas de gestin de bases de datos documentales son Knosys, Inmagic, ISIS, BRS, entre otros. Pese a que las bases de datos relacionales y los sistemas que las gestionan (SGBDR) son los ms utilizados y por tanto los ms populares, las bases de datos documentales han experimentado un fuerte auge durante estos dos ltimos aos, impulsado sobre todo por la popularizacin de Internet y la consiguiente saturacin de informacin textual que ha traido la World Wide Web, as como por el reciente inters de las grandes empresas por gestionar el conocimiento almacenado en documentos. En la actualidad existen nuevos sistemas que combinan funcionalidades del modelo relacional y el modelo documental, son los Sistemas de Gestin de Bases de Datos Relacionales/Documentales o Sistemas Hbridos. Las bases de datos que generan se construyen con informacin muy estructurada (datos) y con
29

informacin no estructurada (documentos). Su comportamiento en la recuperacin de la informacin vara de unos sistemas a otros. Ejemplos de sistemas de gestin de bases de datos relacionales/documentales son los sistemas orientados a la gestin del conocimiento en las organizaciones, as como muchos de los sistemas de gestin bibliotecaria. Ejemplos de sistemas de gestin de bases de datos relacionales/documentales son Lotus Notes, FileMaker, Doris/ Loris (productos de la suite de Ever) entre otro. Atendiendo al lugar en el que almacenan los datos y/o la informacin, los sistemas de bases de datos pueden ser:

Sistemas de bases de datos centralizados: los datos y/o la informacin residen en un solo ordenador. Sistemas de bases de datos distribuidos: los datos y/o la informacin se almacenan en varios ordenadores. Los ordenadores de un sistema distribuido se comunican entre s a travs de distintos medios de telecomunicaciones. A los ordenadores que forman un sistema distribuido se les llama nodos. Por tanto, un sistema distribuido de bases de datos consiste en un conjunto de nodos, y cada uno de ellos puede participar en la ejecucin de transacciones que accedan a datos de uno o varios nodos. 2.4 VENTAJAS Y DESVENTAJAS DE LAS B.D. 1. Sistemas orientados a ficheros:

DESVENTAJAS Desperdicio de espacio de almacenamiento al existir duplicado de datos (debido a la redundancia de datos). Inconsistencia de los datos (datos iguales hacen referencia a distintas cosas). Tratamiento ineficaz de los datos (no se puede modificar, actualizar todos los datos al mismo tiempo) Dificultad del tratamiento de los ficheros en su conjunto debido a la incompatibilidad de los lenguajes de programacin. Solo se pueden realizar las consultas que se han tenido en cuanta a la hora de escribir los programas de aplicacin, las consultas son limitadas por el n de programas de aplicacin creados (n consultas = n programas aplicacin). Descentralizacin de los datos (por no estar todos integrados en la misma coleccin). Las actualizaciones y modificaciones de los ficheros no son compartidas por toda la organizacin lo cual lleva a grandes confusiones.

30

Se produce una inconsistencia cuando copias de datos de registros lgicos no coinciden. Debido a estas desventajas y algunas otras. A los sistemas de ficheros se accede mediante unos sistemas de programacin escritos especialmente para ellos . Como los lenguajes de programacin pueden ser distintos e incompatibles hacen que los ficheros sean difciles de procesar de manera conjunta. 2.5 SISTEMAS ORIENTADOS A DATOS: QUE ES UNA BASE DE DATOS? Es una coleccin de datos interrelacionados entre s, sobre un soporte informtico no voltil y que sirven todos a la misma organizacin, es decir que los datos se encuentran integrados en una nica coleccin de datos pero con un mnimo de redundancias. Qu son los datos? Los datos procesados dan lugar a la informacin / la informacin son los datos procesados. VENTAJAS (Debido a la integracin de los datos)

Control de redundancias de datos. Consistencia de datos (eliminando la redundancia de los datos se consigue que las actualizaciones se realicen una sola vez y estn disponibles para todos los usuarios al mismo tiempo) Obtencin de ms informacin sobre la misma cantidad de datos al estar todos integrados en la misma coleccin. Comparticin de los datos porque la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estn autorizados. Mantenimiento de estndares (los estndares pueden establecerse sobre el formato de datos, procedimientos de actualizacin, reglas de acceso a los datosFacilitan el intercambio de datos y de la documentacin de la base de datos).

SISTEMAS DE ADMINISTRACIN DE BASES DE DATOS (DBMS) En 1964, se conciben los primeros Gestores de Base de Datos (DBMS: Database Management System), por medio de los cuales se pretende dar un viraje a los Sistemas de Archivos, los cuales se limitan a la estructuracin del almacenamiento fsico de los datos. Con los DBMS se crea el concepto de Administracin de los datos, por medio de actividades integradas que permiten verlos fsicamente en un solo almacenamiento pero lgicamente se manipulan a travs de esquemas compuesto por
31

estructuras donde se establecen vnculos de integridad, mtodos de acceso y organizacin fsica sobre los datos, permitiendo as obtener valores agregados de utilizacin tales como: manejo de usuarios, seguridad, atomicidad e independencia fsica y lgica de los datos, entre otros. El primer gestor de bases de datos (DBMS) comercial, IDS: Integrated Data Store , se crea bajo el concepto del Modelo de Datos de Red (Bachgman, 1965); luego se desarrolla el IMS: Information Management System , sobre el concepto del Modelo de Datos Jerrquico. Estos DBMSs eran accesados normalmente por lenguajes de programacin como Cobol usando interfases de bajo nivel haciendo que las tareas de creacin de aplicaciones y mantenimiento de los datos fuesen controlables, pero an complejas. A medida que evolucionaban los DBMS, los lenguajes de programacin tambin lo hacan. En 1967 surge el primer lenguaje de programacin orientado a objetos, Simula, el cual fue propuesto para simulacin de actividades. En este los procedimientos podan ser asociados a un tipo para representar el comportamiento de una instancia, introduciendo as el concepto de Clase. Simula, soporta paralelismo permitiendo muchas entidades interactivas en una simulacin. Adems comparte objetos acoplando datos y procedimientos. Luego se genera una nueva nocin, donde las bases de datos deben almacenar por medio de una estructura tabular llamada relacin o tabla (Codd,1970), compuesta por filas y columnas, acensando dichas relaciones a travs de un lenguaje de alto nivel no procedural (declarativo). De esta forma en los aos 80s surgen varios productores de DBMS Relacionales (RDBMS) como Oracle, Informix, Ingres y DB2, adems de otros lenguajes orientados a objetos como el C++, Java (antes el Oak), Eiffel, y Smalltalk adoptando y mejorando el concepto de clase pero su desarrollo se hace independiente de los DBMSs.

32

Esquema de un DBMS

LENGUAJES DEL DBMS En la estructura bsica de un Sistema Manejador de Base de Datos se enuncian dos lenguajes que permiten trabajar sobre la base de datos. Estos lenguajes estndar son:

DDL (Data Definition language): Lenguaje de Definicin de Datos. Por medio de este el DBMS identifica las descripciones de los
33

elementos de los esquemas y almacena la descripcin del esquema en el catlogo del DBMS. Por medio de este el DBMS especifica el esquema conceptual e interno (Base de datos Almacenada).

SDL (Store Definition language): Lenguaje de definicin de almacenamiento. Es utilizado por el DBMS para especificar el esquema interno que corresponde a la Base de Datos Almacenada. VDL (View Definition language): Lenguaje de Definicin de Vistas. Es utilizado por el DBMS para especificar las vistas del usuario y sus correspondencias con el esquema conceptual.

En las Bases de Datos Relacionales, el SQL, representa una combinacin de los anteriores.

DML (Data Manipulation language): Lenguaje de Manipulacin de Datos. Permite la manipulacin de las operaciones de Insercin, Eliminacin y Modificacin. o Tipos de DML's: De alto Nivel o No por procedimientos: SQL. De bajo Nivel o por procedimientos.

2.6 ODBC INTRODUCCION CONECTIVIDAD ABIERTA DE BASES DE DATOS Conectividad abierta de bases de datos es el interfaz estratgico de Microsoft para tener acceso a datos en un entorno heterogneo de relacional, no circulanterelacional bate sistemas de administracin. Basndose en la especificacin interfaz de nivel de llamada del Grupo de acceso SQL, ODBC proporciona una manera abierta, vendor-neutral de tener acceso a datos almacenados en una variedad de equipo personal propietario, mini equipo y bases de datos grandes. ODBC alivia la necesidad de que aprende varias interfaces de programacin de aplicaciones para proveedores de software independientes y desarrolladores corporativos. ODBC proporciona ahora un interfaz universal de pgina de acceso a datos. Con ODBC, los programadores de aplicaciones pueden permitir una aplicacin para tener acceso, ver y modificar simultneamente a datos de varias diversas bases de datos. ODBC es un componente principal de Arquitectura de Servicios Abierto de Microsoft Windows. Apple ha refrendado ODBC como una clave que permite tecnologa anunciando compatibilidad en System 7 en futuro. Con compatibilidad creciente de sector, surge ODBC rpidamente estndar para acceso a datos para aplicaciones de Windows y Macintosh como una industria importante.

34

ODBC es una especificacin de que los desarrolladores escriben cualquiera segn una especificacin:

Una aplicacin ODBC-enabled de escritorio "servidor de aplicaciones" o "cliente" "tambin un Cliente ODBC". Esto es la aplicacin que ve el computer-user en la pantalla de equipo. Un Controlador ODBC para un "servidor" de servicios de fondo o un "servidor" DBMS (Sistema de Administracin de Database). Esto es la aplicacin DBMS que reside de un equipo utilizado por varios usuarios para almacenar datos para acceso. Esta aplicacin no se carga en el equipo del usuario final. La aplicacin de servidor normalmente es ms robusta (ms rpida con seguridad centralizada y copia de seguridad de datos y etc.) que la aplicacin de cliente. El Controlador ODBC reside entre el Cliente de ODBC y el DBMS; sin embargo, se carga en el equipo de servicio de fondo.

Para usar ODBC, los tres componentes siguientes estn requeridos: Ejemplos: ODBC Microsoft Access, una aplicacin creada en Access, una aplicacin creada en Microsoft Visual Basic, una aplicacin creada en SDK + ODBC SDK C + Win o aplicaciones de otros proveedores (tal como Lotus) que utilizan ODBC-enabled, CLIENTE (un cliente tambin called ODBC-enabled de servicio de fondo ODBC). CONTROLADORES ODBC un Controlador ODBC para el servidor ODBC. El Catlogo de Controlador ODBC contiene una lista amplia de controladores ODBC. Por ejemplo, el Paquete de Controlador ODBC de Microsoft es un conjunto de siete controladores ODBC preparados para utilizarse o estar empaquetados con clientes ODBC. Un Controlador ODBC de SQL Server se incluye en Access y Informix trabaja de un controlador ODBC en Informix. Para obtener un Catlogo de Controlador ODBC, llame al Microsoft Order Desk en ( 800 ) 360 - 7561. (http://www.microsoft.com/worldwide/) Cualquier cliente ODBC puede tener acceso a cualquier DBMS para el que exista un Controlador ODBC. SERVER de DBMS es un servidor de servicios de fondo o un servidor DBMS, SQL Server, Oracle , AS/400, FoxPro, Microsoft Access o cualquier DBMS por ejemplo para el que exista un controlador ODBC 2.7 TECNOLOGIAS 3GL (Lenguajes de Programacin General, Java C++, C#, etc) y 4GL (lenguajes de Propsito Especifico). Con el paso del tiempo los diversos lenguajes de programacin han madurado. Hoy en da es posible categorizarlos por las caractersticas que han venido exhibiendo con dicha maduracin. De manera que tenemos:

3GL o lenguajes de tercera generacin.- Tambin conocidos como lenguajes de nivel alto.
35

4GL o lenguajes de cuarta generacin.- Generalmente un lenguaje 4GL es un lenguaje de propsito especfico, que proveen un lenguaje muy cercano al lenguaje natural o simblico manejado en un mbito especfico. Muchos lenguages son llamados 4GL cuando en realidad slo son una mezcla de 3GL y 4GL o 3GL con extensiones de de dominio especcifico. Por ejemplo, el comando list en dBASE es un comando propio de un 4GL pero las aplicaciones programadas en dBASE son 3GL. El siguiente ejemplo ilustra la diferencia de una sintaxis 3GL y 4GL para abrir un registro de clientes y mostrar su contenido en pantalla. dBASE 3GL use customer do while .not. EOF ? name, address skip enddo dBASE 4GL use customer list name, customer

Los lenguajes de tercera generacin (3GL) necesitan de una gran cantidad de cdigo para poder ejecutar un simple comando en contraposicin con los 4GL que permiten hacer lo mismo con pocas lneas de cdigo, los lenguajes de cuarta generacin indican que debe de hacer el usuario y no como se debe de hacer. El usuario solo debe de indicar al sistema de generacin de pantallas una serie de parmetros que se utilizarn para el despliegue de la aplicacin, mejorando como se pretende acelerar el proceso de produccin. Dentro de los lenguajes de cuarta generacin se encuentran, los ya citados lenguajes de consulta y generadores de informes, lenguajes especializados como hojas de clculo y lenguajes de bases de datos, generadores de aplicaciones para el mantenimiento (IMEC) de bases de datos. Lenguajes de muy alto nivel para generar el cdigo de la aplicacin. [3] Desde el punto de vista de los usuarios desarrolladores las interfaces descritas en los sistemas de gestin de bases de datos, los tipos de 4GL son: Generadores de formularios. El usuario puede definir el como se ver la pantalla, cuales datos quiere presentar en la pantalla y en donde desea que estos aparezcan, tambin se pueden incluir elementos de validacin de datos, utilizacin de operadores aritmticos, entre otros. Generadores de informes. Extrae informacin de la base de datos y permite por medio de esta crear informes, la salida de la informacin debe ser bien definida, donde incluso hay algunas que permiten el despliegue con formularios previos.

36

Generadores de grficos. Pretende mostrar la tendencia de la informacin con datos extrados de las bases de datos. donde esta la posibilidad de mostrar distintos tipos de grficos. Generadores de aplicaciones. Funcionan como generadores de interfaces entre el usuario y las bases de datos. Como ya se ido mencionando reducen el tiempo de desarrollo de aplicaciones, todo esto se utiliza por medio de libreras previamente definidas. El usuario dice que se debe de hacer, el generador es quien dice como hacerlo.

3.1 SELECCIN DE PLATAFORMA La seleccin de la plataforma, es el proceso ms importante para la realizacin de nuestro sitio web, ya que con su eleccin se tendr que llevar una temtica diferente para cada plataforma. Pero para poder elegirla mejor debemos: 1) Evaluar lo que se pretende desarrollar 2) Identificar y pronostica el costo y los beneficios futuros y realizar un anlisis costo-beneficio. 3) Determinar las necesidades de informacin de los usuarios, ya que estos tambin determinan la plataforma. BENEFICIOS PARA USAR ALGUNA PLATAFORMA EN PARTICULAR Generalmente los proveedores de hosting ofrecen servicios mucho ms accesibles en costos y disponibilidad, en servidores basados en plataforma LAMP (Linux Apache MySQL PHP) que en su equivalente Microsoft (lo cual es obvio porque en LAMP pueden evitarse el pagar licencias para los servidores con los que se ofrece el servicio).A menos que alguien (empresa o individuo) requiera ejecutar o desarrollar un website basado en tecnologa de Microsoft (.NET, ASP, SQL Server, etc), siempre es posible y ms accesible encontrar un hosting basado en LAMP, o instalar un webserver basado en LAMP. Se comprob que la mayora de las plataformas web de los sitios elegidos se basan en Linux o Windows (recordaremos que existen otras plataformas web como las basadas en JSP y ColdFusion) y que de estos, Linux ofrece mejor tiempo de actividad. Segn este estudio, las plataformas web basadas en Windows y Linux se ejecutan en ms de tres cuartos de la totalidad de sitios web de Europa. No obstante, existen diferencias entre pases. Polonia y Alemania prefieren Linux en combinacin con Apache para sus sitios web, mientras que los sitios profesionales en el Reino Unido y Suecia confan sobre todo en Windows y Microsoft IIS 3.2 EVALUACION Y SELECCION DE SOFTWARE PARA SER UTILIZADO
37

Los paquetes de software, ms que aquellos programas de aplicacin que se escriben especficamente para una instalacin, se han vuelto cada vez ms accesibles, y en efecto, deben considerarse con mucha atencin. Numerosas horas de programacin pueden ser ahorradas si a existe un paquete de software apropiado para todo el sistema o parte de l y su uso implique un mnimo de adaptaciones. La evaluacin de software comercial junto con los futuros usuarios no debe ser desatendida y es necesario controlar la propaganda meramente comercial para evitar caer en decisiones influenciadas. Especficamente, hay seis categoras principales dentro de las cuales se puede ubicar al software. SELECCION DEL SOFTWARE Una apropiada seleccin de software garantizar la proteccin, integridad, confidencialidad, accesibilidad y adaptabilidad de la informacin, manteniendo bajo control todas las operaciones de los distintos procesos. Los tres principales criterios para seleccionar software son 1) en qu grado el software satisface los requerimientos, 2) los costos de la solucin y 3) Determinar las necesidades de informacin de los usuarios. ANALISIS DE LAS NECESIDADES Definicin de procesos Informacin requerida EVALUACIN Y SELECCIN DE SOFTWARE Es necesario realizar una evaluacin del software comercial a partir de demostraciones con datos de la empresa; asimismo, un revisin de la documentacin que le acompae. Normalmente el vendedor asegurar que el software funciona y que ha sido probado en sus instalaciones, pero eso no garantizar que est libre de errores en un momento dado o que no fallar cuando se lleven a cabo acciones incorrectas por parte de los usuarios. Es obvio que no habr garanta si el software comercial se utiliza con un equipo de cmputo defectuoso. La necesidad de copias mltiples del software (para el uso de varias estaciones trabajo) implica negociar con el vendedor una licencia de uso mltiple, de tal forma que los derechos del autor no se infrinjan al crear copias ilegales. Con frecuencia esto implica la compra de un paquete de software al precio regular y la compra de copias adicionales a un precio reducido. Tambin es posible negociar un contrato de servicios especiales que cubra el soporte del software adquirido. Dentro de l quedara incluido el mantenimiento de
38

emergencia y el preventivo; las actualizaciones sin costo o a un precio reducido, las copias adicionales de la documentacin y la capacitacin de los usuarios. 3.3 INSTALACION DE LOS PROGRAMAS TOMCAT Y MYSQL PARA WINDOWS

Instalar el jdk-1_5_0_09-windows-i586-p.exe Cuando te pida la ruta, instalarlo en: C:\Java\jdk1.5.0_09 Instalate el apache-tomcat-5.5.20.exe En cierto momento el wizard de instalacin te pregunta donde est el JDK y te pone una ruta. Ejecutar el monitor del tomcat. Tomcat no ejecuta servlets que no estn detallados en el archivo web.xml de cada aplicacin.

Como este instructivo no muestra como hacer deployment debemos descomentar las lineas para que se permita la ejecucin de clases anonimas. Para ver si est todo bien con el tomcat, abrimos el navegador y colocamos la siguiente url: http://localhost:8080/ Gua de instalacin de Apache, PHP y MySQL en Windows

INSTALACION DE APACHE 2.2.4 SERVER Como siempre en Windows casi todo es siguiente, luego aceptamos la licencia, luego nos muestra unas notas sobre Apache server, y despus de leerlas (o no?), nos aparecer un cuadro de dialogo con algunas opciones, las cuales son:

Network Domain=localhost Server Name=localhost Administrator`s Email Address=tuemail@tudominio.com

Para probarlo abrimos nuestro navegador, y tecleamos localhost. INSTALACION DE PHP 5.2.3 Para empezar a instalar, php deben de bajar el paquete, desde la pagina web de php, hay extraemos el archivo zip, con el nombre PHP. En C:\PHP, elegimos todos los archivos DLL y los copiamos a la carpeta siguiente C:\WINDOWS\system32

39

Ahora abrimos nuestro archivo httpd.conf que se encuentra localizado en, C:\Archivos de programa\Apache Software Foundation\Apache2.2\conf. INSTALACION DE MySQL 5.0.45 Lo que bajamos fue un archivo en formato zip, ahora lo descomprimimos y nos aparecerea un archivo setup.exe , despus lo ejecutamos. Como siempre sucede en Windows damos click en next(o sea siguiente), y nos preguntara que tipo de instalacin deseamos, Elegimos la personalizada, o sea Custom, con ello podemos personalizar varias cosas que necesitamos para instalar el MySQL correctamente. Aqu debemos elegir donde se instalara MySQL, esto es importante ya que nos servir para hacerlo ms fcil de referenciar, recuerden donde instalamos php , por ello hay que cambiarlo, a lo dems no es importante hacerle ningn cambio. Damos click en change y lo cambiamos por una ruta mas fcil, como esta. C:\MySQL\ Esto se hace escribiendo la nueva ruta en la ventana que nos abri cuando hicimos, clic en change. Ahora nos aparecer un cuadro de dialogo preguntndonos si queremos configurar el servidor ahora. 3.4 CONFIGURACION DEL SOFTWARE CONFIGURACIN DE APACHE TOMCAT Y MYSQL

Nos colocamos en el directorio C:\Archivos de programa\Apache Software Foundation\Tomcat 5.5\webapps y creamos un nuevo folder con el nombre de nuestra aplicacion por ejemplo El_ShEkO Dentro de este folder El_ShEkO creamos los folders images, temp y WEB-INF. Dentro del folder WEB-INF creamos los folder classes y lib. Descomprimimos el archivo mysql-connector-java-5.0.4.zip

mysql-connector-java-5.0.4-bin.jar que es el connector jdbc y copiamos este archivo al folder lib.

Instalamos mysql con mysql-5.0.21-win32.zip y luego creamos la base de datos en nuestro ejemplo mi_sistema con el administrador de base de datos de tu preferencia. Puedes usar si quieres el mysql-administrator1.1.9-win.msi.

40

Lo vamos a tener 2 veces copiado porque en teoria podras tener el tomcat instalado en otra maquina, y seran usandos en momento de ejecucin por tomcat. El directorio de contenido estatico se encuentra en: C:\Archivos de programa\Apache Software Foundation\Tomcat 5.5\webapps\mi_sistema\images Colocar los Path y los Classpath Classpath: C:\java\mysql-connector-java-5.0.4-bin.jar; C:\Archivos de programa\Apache Software Foundation\Tomcat5.5\common\lib\ Path: C:\Java\jdk1.5.0_09\bin\javac.exe INSTALACION DE APACHE MYSQL Como lo vamos a configurar detalladamente lo dejamos como esta y damos click en next. Developer Machine (para desarrollo se usara un mnimo de memoria , como es nuestro caso). Server Machine (para Servidor, esta opcin es la ms adecuada si queremos instalar un servidor que tendr muchas peticiones a MySQL, como un servidor de hosting o pginas web muy grandes. El uso de memoria es mediano). Dedicated MySQL Server Machine (Servidor dedicado de MySQL, en este caso es cuando nicamente usaremos MySQL, en la maquina y es para necesidades extremadamente grandes de peticiones y interaccin con las bases de datos.) Como supondrn elegimos la primera opcin. En el siguiente cuadro de dialogo siguiente elegiremos la primera opcin para indicarle que deseamos una base de datos de uso multifuncional. Posteriormente, nos preguntara sobre las conexiones que probablemente tendremos, la primera opcin, no muestra 20 conexin, la segunda 500 conexiones, y en la ultima nosotros podemos definir cuantas conexin usaremos, estos nmeros se refieren en conexiones al mismo tiempo. En nuestro caso elegiremos la primera opcin.En el siguiente cuadro nos preguntara si deseamos que se establezcan conexiones TCP/IP, esto es para que desde otro equipo se puedan conectar con nuestro servidor MySQL, aunque no es necesario, es recomendable si deseamos checar la conexin desde otra pc, como en un red por ejemplo. Posteriormente nos pregunta si queremos que se instale como un servicio de Windows, que es lo ms recomendable, y tambin podemos elegir el nombre del servicio, que en nuestro caso usaremos el nombre MySQL y dejamos tambin seleccionada la opcin para que se inicie automticamente. Y tambin elegiremos que se incluya a MySQL en el path de Windows, aunque no es necesario.
41

Ahora nos pedir la contrasea de root esta es la contrasea de administrador para controlar totalmente a mysql les recuerdo que es muy importante nunca olvidar esta contrasea, ya que ser muy difcil volver a restablecer la contrasea, ms bien imposible. Y tambin nos dice que si queremos crear un usuario annimo, le recomiendo no activarla. En la ltima configuracin solo nos pedir que ejecutemos lo que hemos configurado dndole click en Execute. Y en respuesta las 4 opciones nos debern aparecer con palomitas asi. Para activar mysql abrimos el archivo PHP.INI y se quita el punto y coma(;) de la siguiente lnea. ;extension=php_mysql.dll Configurar a php donde buscara las extensiones, en las siguientes lneas. ; Directory in which the loadable extensions (modules) reside. ;extension_dir = "./" extension_dir ="C:/PHP/ext" Recordemos que a php lo instalamos en c:/PHP y la carpeta se llama ext. Ahora reiniciamos el apache y ya tenemos todo instalado solo falta hacer un archivo de prueba para verificar que efectivamente est bien instalado. Creamos un archivo conexin.php y agregamos lo siguiente <? echo $link=mysql_pconnect("localhost","root","password"); ?> Y nos deber aparecer lo siguiente. Resource id #2 Con esto finalizamos la instalacin de APACHE, PHP y MySQL en Windows. APLICACIONES DE COMERCIO ELECTRONICO 4.1 DESARROLLOS PARA INTERNET CON JAVA, JSP Y MYSQL Hoy en da, puede encontrar la tecnologa Java en redes y dispositivos que comprenden desde Internet y superordenadores cientficos hasta porttiles y telfonos mviles; desde simuladores de mercado en Wall Street hasta juegos de uso domstico y tarjetas de crdito (java.com). Java es un lenguaje de programacin completo que proporciona la posibilidad de crear soluciones empresariales seguras, independientes de plataforma, robustas con posibilidades de escalar. Tambien tiene que saber que Java requiere un aprendizaje y programacin especializados.
42

POR QU LOS DESARROLLADORES DE SOFTWARE ELIGEN LA TECNOLOGA JAVA El lenguaje de programacin Java ha sido totalmente mejorado, ampliado y probado por una comunidad activa de unos cuatro millones de desarrolladores de software. La tecnologa Java, una tecnologa madura, extremadamente eficaz y sorprendentemente verstil, se ha convertido en un recurso inestimable ya que permite a los desarrolladores: Fuente: java.com/es

Desarrollar software en una plataforma y ejecutarlo en prcticamente cualquier otra plataforma Crear programas para que funcionen en un navegador Web y en servicios Web Desarrollar aplicaciones para servidores como foros en lnea, tiendas, encuestas, procesamiento de formularios HTML, etc. Combinar aplicaciones o servicios basados en la tecnologa Java para crear servicios o aplicaciones totalmente personalizados Desarrollar potentes y eficientes aplicaciones para telfonos mviles, procesadores remotos, productos de consumo de bajo coste y prcticamente cualquier dispositivo digital

DEFINIENDO ALGUNOS CONCEPTOS JDK o SDK: Es el ambiente en el cual es posible desarrollar cualquier aplicacin Java. Este ambiente o paquete incluye: El API de Java, el compilador de Java, as como el JVM (Java Virtual Machine) de la plataforma correspondiente. JDBC : La tecnologa JDBC (Java DataBase Connectivity) es una interface de programacin de aplicaciones (API) que permite acceder, desde el lenguaje de programacin Java, a virtualmente cualquier fuente de datos tabulados. JSP (Java Server Pages) : Este es un tipo de programa Java que contiene HTML, para ejecutar un JSP se requiere de un servlet engine como Tomcat. La tecnologa JSP separa la interface de usuario de la generacin de contenidos, permitiendo a los desarrolladores cambiar el formato de la pgina sin alterar el contenido dinmico subyacente.

43

Servlet : Un servlet es una clase Java que se ejecuta en un servidor de aplicaciones. Su nombre proviene de su parecido con los applets, solo que aplicados al servidor. Hasta la aparicin de los servlets, la creacin de contenidos dinmicos en pginas web se haca a travs de CGI. Un servlet generalmente es utilizado para procesar solicitudes de usuarios, para procesos de verificacin de usuarios, generacin de contenido dinmico. ENTRANDO EN EL CURSO: Una aplicacin Cliente fundamentales: Interfaz de usuario Lgica de negocios Gestin de datos Servidor tradicional tiene tres componentes

Actualmente, la lgica de negocios se ha convertido tambin en un servicio y puede encontrarse fsicamente, en cualquier otro servidor de aplicaciones, originndose as, una arquitectura de tres capas. Una aplicacin diseada segn el modelo de tres capas se divide en presentacin, lgica de negocios y datos.
44

La capa de presentacin contiene los elementos de la interfaz de usuario. Lo que contiene esta capa son los elementos con los que el usuario puede interactuar. En la capa lgica de negocios es donde se establece la operacin del sistema, siendo esta capa, alimentada por la capa de datos. Aqu se realizan las distintas operaciones a realizar con los datos. Por ltimo, la capa de datos consiste bsicamente en un gestor de base de datos y sus mecanismos de acceso. Esta estructura de tres capas es mas adecuada para el mantenimiento y posibilita escalar la aplicacin, debido a su naturaleza modular. La plataforma J2EE usa un modelo distribuido de tres capas para las aplicaciones empresariales. Aqu, la lgica de negocios est dividida en componentes segn su funcin. En el caso de la J2EE la configuracin multicapa queda establecida de la siguiente forma:

Capa cliente: Se ejecuta en el cliente. La componen programas que interactan con el usuario. Esta capa recibe los datos del usuario y los enva a la capa web, para procesos como la validacin. Capa web: Los componentes de esta capa se ejecutan en el servidor J2EE usando el protocolo HTTP, esta capa ofrece la funcionalidad vinculada a internet. Capa de negocios: Contiene reglas de negocios, para alguno en particular. Esta capa en general acta con la capa de informacin. Capa de informacin: Esta capa conecta la aplicacin con las bases de datos, sistemas de terceros, etc., de esta forma estos no tienen que ser replicados en ninguna otra parte

El curso Desarrollos para Internet con Java, JSP y MySQL comienza con el estudio del lenguaje de programacin Java | y continua con Introduccin a las Java Server Pages (JSP) - JSP y MySQL, en forma detallada y en un entorno de desarrollo propio de Java, aqu crear sus programas y los podr ver operativos. Las JSP 2.0 pueden prescindir del lenguaje Java, ya que disponen de sus propios comandos; pero en mi opinin personal, resulta trascendente la incorporacin de Java en las mismas para resolver problemas, adems, el cdigo Java puede estar vinculado a clases Java y crear un mbito de abstraccin y seguridad, sumamente interesantes. Podr usar el enorme potencial de Java en pginas web. De esta forma los datos ingresados por el usuario se pueden resolver mediante aplicaciones Java contenidas en una JSP. El otro tema trascendente es la comunicacin de las JSP con la base de datos MySQL. En suma, podr crear aplicaciones para internet en Java y MySQL, podr conocer los modelos de aplicaciones en capa usados en los mbitos corporativos, el aprendizaje de Java le abre puertas tales como el desarrollo de programas para la telefona celular, la industria y todos los mbitos que pueda imaginar.

45

Todos los procesos de creacin de aplicaciones Java para Internet, las JSP, Servlet, acceso a base de datos MySQL, etc. los realizar paso a paso y los podr ver operativos. Este curso se puede realizar luego de MySQL y PHP 5. 4.2 PHP Y MYSQL Lenguajes de script PHP es un lenguaje de script del lado del servidor. Otros lenguajes similares son ASP, JSP o ColdFusion. Los scripts PHP estn incrustados en los documentos HTML y el servidor los interpreta y ejecuta antes de servir las pginas al cliente. El cliente no ve el cdigo PHP sino los resultados que produce.

Luego de MySQL / PHP Base de datos PostgreSQL y SQL PostgrSQL est considerado como la base de datos de cdigo abierto ms avanzada del mundo. PostgreSQL proporciona un gran nmero de caractersticas que normalmente slo se encontraban en las bases de datos comerciales tales como DB2 u Oracle. El entrenamiento sobre PostgreSQL incluir el estudio del SQL avanzado, aprovechando todo el potencial de su soporte de funciones. Extensin mejorada de MySQL: mysqli Estudio de la extensin de MySQLI considerando la forma de programacin procedural y la orientacin a objetos. PHP 5 y base de datos SQLite SQLite es una librera programada en C que implementa un completo motor de base de datos embebida que no precisa configuracin. Es muy rpido y la ventaja fundamental es que permite utilizar el lenguaje estandar SQL. Introduccin a Python - Python y MySQL El estudio de Python finaliza con su simbiosis a la base de datos MySQL. Alli escribiremos programas en Python capaces de acceder a MySQL y crear bases de datos, tablas, hacer inserciones de datos y el despliegue de los mismos. Esto le
46

permitir manejar una nueva herramienta, potente y de gran calidad, para utilizar en el mbito de la web o fuera de ella, en aplicaciones comerciales. 4.3 ASP.NET/MYSQL ASP.NET Herramienta de desarrollo web comercializado por Microsoft. Es usado por programadores para construir sitios web dinmicos, aplicaciones web y servicios XML. Forma parte de la plataforma .NET de Microsoft y es la tecnologa sucesora de la tecnologa Active Server Pages (ASP). Cualquier persona que este familiarizada con el desarrollo de aplicaciones web sabr que el desarrollo web no es una tarea simple. Ya que mientras que un modelo de programacin para aplicaciones de uso comn est muy bien establecido y soportado por un gran nmero de lenguajes, herramientas de desarrollo, la programacin web es una mezcla de varios lenguajes de etiquetas, un gran uso de lenguajes de script y plataformas de servidor. Desafortunadamente para el programador de nivel intermedio, el conocimiento y habilidades que se necesitan para desarrollar aplicaciones web tienen muy poco en comn con las que son necesarias en el desarrollo tradicional de aplicaciones. Microsoft desarroll una nueva tecnologa denominada ASP.NET -como parte de su estrategia.NET- para el desarrollo Web, con el objetivo de resolver las limitaciones de ASP y posibilitar la creacin de software como servicio. ASP.NET es la plataforma unificada de desarrollo web que proporciona a los desarrolladores los servicios necesarios para crear aplicaciones web empresariales. ASP.Net, puede decirse que en nuevo nivel de abstraccin en la construccin de sitios web, por que se pueden crear rpidamente aplicaciones web, basndose en los controles incluidos en el frameWork o muchos gratuitos que hay en la red, ocultando el cdigo de mucho Ej: Puedes crear fcilmente un grid o tabla, y sta se auto-ordena, pgina, etc, obteniendo sus datos desde cualquier base de datos. Incluye una gran herramienta para la construccin de reportes, y esto incluyen medios automticos para exportarlos a XLS o PDF, y de igual forma incluye CristalReport. Adems permite separar completamente la interfaz de la lgica de negocio. Excelente para desarrollo de aplicaciones multicapas. Es muy sencilla la creacin de pginas con AJAX, slo incluyendo unos controles, as como descargar gratuitamente el ToolKit de ASP.Net Ajax. En la actualidad una aplicacin ASP.NET puede ejecutarse de dos formas distintas: Aplicaciones cliente/servidor: Estas aplicaciones estan tpicamente en formato de ejecutables compilados. Estos pueden integrar toda la riqueza de una interfaz de usuario, tal es el caso de las aplicaciones de desempeo y productividad, pero no se rene la lgica de negocio como un recurso que se pueda reutilizar. Adems acostumbran ser menos gestionables y escalables que las dems aplicaciones.
47

Aplicaciones que utilizan el navegador: Dichas aplicaciones estn caracterizadas por contar con una interfaz de web rica y muy til. La interfaz grfica integra varias tecnologas, las cuales son el HTML, XHTML, scripting, etc; siempre y cuando el navegador que se est utilizando soporte estas tecnologas. Es realmente mejor que ASP? Sin duda, es mucho mejor que el ASP tradicional, ASP.net trae diversas mejoras entre las cuales se destacan: Rendimiento: la aplicacin de compila en una sola vez al lenguaje nativo, y luego, en cada peticin tiene una compilacin Just In Time, es decir se compila desde el cdigo nativo, lo que permite mucho mejor rendimiento. Tambin permite el almacenamiento del cach en el servidor Rapidez en programacin: mediante diversos controles, podemos con unas pocas lneas y en menos de 5 minutos mostrar toda una base de datos y hacer rutinas complejas. Servicios Web: trae herramientas para compartir datos e informacin entre distintos sitios. Seguridad: tiene diversas herramientas que garantizan la seguridad de nuestras aplicaciones.

48

También podría gustarte