Title: CS-434: Programaci
1CS-434 Programación Orientada a Objetos usando
JavaSemana 7
- Dr. Jesús Borrego
- Adjunct Faculty
- Regis University
2Temas
- Bases de Datos y JDBC
- Redes y OSI
- Programación con Sockets
3Términos Clave
- Enlace de Datos Enlace de datos
- Listener - Oyente
4JDBC
- Java Database Connectivity un API que permite
acceso a bases de datos relacionales, hojas de
cálculo y archivos communes - JDBC no depende de una base de datos especÃfica
- Puede tener acceso a cualquier base de datos
relacional
5JDBC
6(No Transcript)
7JDBC API
- Se ubica en dos paquetes
- java.sql y javax.sql
- Para programar con JDBC
- Cargar JDBC
- Connectar a la base de datos
- Preparar instrucciones en SQL y procesar los
resultados - Desconectar la base de datos
8Conectarse a la base de datos
- String connString
- "jdbcmysql//localhost/acme?userrootpassword
admin" - Connection conn
- DriverManager.getConnection(connString)
- Statement stmt conn.createStatement()
- PreparedStatement pstmt conn.prepareStatement()
- CallableStatement cstmt conn.prepareCall()
- ResultSet rs stmt.executeQuery(SELECT FROM
book) - Stmt.executeUpdate(INSERT into book VALUES
())
9Actividad 1
- Ejemplo de JDBC en NetBeans/Java
http//www.youtube.com/watch?vxk_6_ntC49o
(1435 min.)
10Modelo OSI
Aplicación
Presentación
Sesión
Transporte
Red
Enlace de Datos
FÃsica
11Capas OSI
- Aplicación acceso al ambiente distribuÃdo y OSI
- Presentación Oculta los detalles de
implementación de los datos - Sesión controla la comunicación entre las
aplications, configure, conecta y termina las
conexiones
Source Stallings, W. (2007). Datos and computer
communications (8th ed.). Upper Saddle River, NJ
Pearson Prentice Hall.
12Capas OSI - II
- Transporte control de comunicaciones fiables,
la recuperación y el flujo de extremo a extremo - Red aisla las capas superiores de los detalles
de conectividad - Enlace de datos controla transmisión de bloque
(error, flujo, syncronización) - FÃsica transmite datos sin estructura
Source Stallings, W. (2007). Datos and computer
communications (8th ed.). Upper Saddle River, NJ
Pearson Prentice Hall.
13Ejemplo de Flujo
Server
Server
Datos
Datos
14Protocolo de Internet
Aplicación
Transporte
Transporte
Red/Internet
Control del Enlace de Datos
FÃsica
15OSI vs. IP
Aplicación
Aplicación
Presentación
Sesión
Transporte
Transporte
Red/Internet
Red
Control del Enlace de Datos
Enlace de Datos
FÃsica
FÃsica
16Protocolos del Internet
17IPv4
18Protocolos del Internet
- BGP - Border Gateway Protocol
- FTP - File Transfer Protocol
- HTTP - Hypertext Transfer Protocol
- ICMP - Internet Control Message Protocol
- IGMP - Internet Group Management Protocol
- IP - Internet Protocol
- MIME - Multipurpose Internet Mail Extension
Source Stallings, W. (2007). Datos and computer
communications (8th ed.). Upper Saddle River, NJ
Pearson Prentice Hall.
19Protocolos del Internet - II
- OSPF Open Shortest Path First
- RSVP Resource ReSerVation Protocol
- SMTP Simple Mail Transfer Protocol
- SNMP Simple Red Management Protocol
- TCP Transmission Control Protocol
- UDP User Datosgram Protocol
Source Stallings, W. (2007). Datos and computer
communications (8th ed.). Upper Saddle River, NJ
Pearson Prentice Hall.
20IPv6
21Sockets
- Un socket es una abstracción que representa el
punto final de una tuberÃa de comunicación que
conecta dos aplicaciones de software - Durante dos aplicaciones de intercambio de
información, cada uno de ellos necesita una toma
de corriente que esté conectado a la misma
tuberÃa de comunicación
22Canal de Comunicación
- El "canal de comunicación" representa las cuatro
capas inferiores del modelo OSI, es decir, el
transporte, red, enlace de datos, y las capas
fÃsicas - De este modo, la abstracción Socket oculta todos
los detalles de las capas inferiores, y por lo
tanto, le permite centrarse en los conceptos de
alto nivel para establecer una conexión y los
datos en movimiento.
23Comunicación
- Cada conexión de socket requiere la cooperación
de dos aplicaciones participantes, uno
inicialmente actúa como servidor, y el otro
actuando inicialmente como cliente - El servidor es una aplicación que solicitudes de
conexión entrantes que se originan en las
aplicaciones del cliente - El cliente es una aplicación que inicia una
conexión a un servidor que espera recibir
solicitudes
24Comunicación - II
- El servidor escucha en un puerto conocido (por
ejemplo, 8000) - El cliente emite una solicitud de conexión a ese
puerto usando un socket - El servidor responde a la solicitud y crea su
propio socket - La comunicación entre las dos aplicaciones
procede mediante sockets
25En Java (Clase Server Socket)
- Utilizada por el servidor para escuchar las
solicitudes de conexión entrantes - A medida que se recibe cada petición, el
ServerSocket crea un nuevo objeto Socket para
controlar la solicitud - Cada solicitud de conexión entrantes resulta en
una instancia nueva del Socket en el servidor
26(No Transcript)
27Clase Socket
- Se usa por el cliente y servidor para comuncarse
entre ambos - Los clients usan un socket para conectar al
servidor y, después de establecer la conexión,
para mandar y recibir información -  Los servidores crean un socket por cada
solicitud de conexión recibida de un cliente
28Clase Socket
29Código del Servidor
- Crear un oyente (ServerSocket) en un puerto
- Escucha solicitudes de conexión con
ServerSocket.accept (), que devuelve un Socket
cuando se recibe una solicitud de conexión desde
una aplicación cliente. - Por cada solicitud de conexión a. Iniciar
entrada y salida de datosb. Leer y escribir la
información correspondida - c. Cerrar la conexión al terminar
30(No Transcript)
31Código del Cliente
- Creear un Socket, especificando la dirección IP y
el puerto del servidor de aplicaciones. - La dirección IP y el puerto se pueden especificar
con una instancia de InetAddress. - Inicializer una corriente de flujo de entrada y
salida para los datos de lectura / escritura
desde / hacia el cliente - Recibir y mandar la información correspondida
- Al terminar la comunicación con el servidor,
cierre el socket.
32(No Transcript)
33Actividad 2
- Ejemplo de Sockets en NetBeans/Java
http//www.youtube.com/watch?vWfKU-Ui-CJQ (1905
min.)
34Tarea
- Completar el proyecto final
- Entregar antes de la semana 8 en WorldClass
- Una persona entrega el proyecto con los nombres
de los miembros del equipo - IncluÃr el proyecto de NetBeans y un documento
que capture pantallas donde revisan el programa - IncluÃr todo el material en un archivo Zip
35Exámen Final
- Material cubierto desde la semana 4
- 4 preguntas
- 1 programa
- Entregar a WorldClass antes de media noche el
martes 24 de junio
36Preguntas?
- Email to jborrego_at_regis.edu