Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Persistencia y Datos Transaccionales
Persistencia y Datos Transaccionales
Objetivos
DICCIONARIO DE DATOS MODELO ENTIDAD-RELACION DEL BANCO XYZ
INSTRUMEN
TOS DE
OBJETIV RECOLECCI
O ÓN DE LA
IDENTIFICAC GENERA CATEGORIAS/VARIA VARIABL INFORMACI RESULTA
IÓN L BLES ES ÓN DOS
Desarrollo de Presentar
proyectos el lenguaje
informáticos de
con tecnología programac
Java, Oscar ión Java y
Belmonte herramient
Fernández, as de Los autores Se logró la
Carlos Granell desarrollo recolectaron publicación
Canut, María que información de de un libro
del Carmen ayudan en 13 libros de que está
Erdozain el programación, orientado a
Navarro, desarrollo patrones de desarrollado
pagina 221 - de diseño y res que
227, publicado proyectos algoritmos quieran
el 26 de febrero utilizando Aprendizaje, proyectos, para escribir aprender
del 2016. Java. herramientas. Java, TCP este libro. Java.
Java a fondo, Java a Desarrollo, Java, TCP El autor del El autor
ingeniero Pablo fondo es aplicaciones, libro consultó publicó este
Augusto una guía networking, variables. 7 libros de libro que
Sznajdelder, de diseño y propone ser
paginas 217 - aprendizaj construcción un curso del
230, Buenos e del de algoritmos. lenguaje de
lenguaje programació
Aires 2013.
de n Java.
programac
ión Java
que
empieza
desde sus
conceptos
más
básicos
hasta los
conceptos
más
avanzados
.
El autor
publicó un
Presentar documento
a los muy breve
sockets que
Introducción al como introduce el
uso de sockets componen concepto de
en Linux, tes de El autor sockets y
Licenciado software recolectó como
Leonardo de para información de programarlo
Matteis, comunicar libros de s en
Argentina aplicacion programación entornos
2011. es. Cliente, servidor. Linux en Linux. Linux.
El socket es un componente de software que sirve como punto de entrada y salida de información
caracteriza por su capacidad de enviar datagramas y se considera poco confiable para enviar
TCP (Transmission Control Protocol), es un protocolo orientado a conexiones que guarda gran
similitud con las comunicaciones telefónicas y es muy confiable para cuidar la integridad de los
datos. El socket TCP del servidor abre un canal mediante una dirección ip y un puerto
Para programar el socket del servidor es necesario importar algunos paquetes en el proyecto.
java.io.ObjectOutputStream
java.io.Object.InputStream
java.net.Socket
java.net.ServerSocket
Estos paquetes nos proporcionan los métodos necesarios para recibir información desde el cliente
y también enviar. El socket debe abrir el canal y esperar a que un cliente se conecte y haga
peticiones.
El socket del servidor también funciona como intérprete. La información viaja en paquetes de
bytes que no pueden ser interpretados por Java. Para ello, Java ofrece los métodos
ObjectOutputStream() e ObjectInputStream() para enmascarar estos bytes de información y
Similar al socket del servidor, se deben importar algunos paquetes en el proyecto para poder
El socket también funciona como interprete y enmascara la información que será enviada al
servidor.
El cliente puede hacer peticiones de forma ilimitada hasta que se interrumpa el enlace.
try
{
//instancio el server con la IP y el PORT
s = new Socket("127.0.0.1", 5432);
oos = new ObjectOutputStream(s.getOutputStream());
ois = new ObjectInputStream(s.getInputStream());
// envio un nombre
oos.writeObject("Javier");
// recibo la respuesta (el saludo personalizado)
String respuesta = (String) ois.readObject();
Socket s = null;
ServerSocket ss = new ServerSocket(5432);
while( true )
{
try
{
// el ServerSocket me da el socket
s = ss.accept();
// informacion en la consola
System.out.println("Se conectaron desde la IP: " +
s.getInetAddress());
-- -----------------------------------------------------
-- Table `BDbancoSebas`.`paises`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `BDbancoSebas`.`paises` (
`cod_pais` INT(255) NOT NULL AUTO_INCREMENT,
`nombre` VARCHAR(255) NOT NULL,
PRIMARY KEY (`cod_pais`),
UNIQUE INDEX `uq_cod_pais` (`cod_pais` ASC) VISIBLE,
UNIQUE INDEX `uq_nombre` (`nombre` ASC) VISIBLE)
ENGINE = InnoDb;
-- -----------------------------------------------------
-- Table `BDbancoSebas`.`ciudades`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `BDbancoSebas`.`ciudades` (
`cod_ciudad` INT(255) NOT NULL AUTO_INCREMENT,
`nombre` VARCHAR(255) NOT NULL,
`cod_pais` INT(255) NOT NULL,
PRIMARY KEY (`cod_ciudad`),
UNIQUE INDEX `uq_cod_ciudad` (`cod_ciudad` ASC) VISIBLE,
UNIQUE INDEX `uq_nombre` (`nombre` ASC) VISIBLE,
INDEX `fk_ciudades_paises` (`cod_pais` ASC) VISIBLE,
CONSTRAINT `fk_ciudades_paises`
FOREIGN KEY (`cod_pais`)
REFERENCES `BDbancoSebas`.`paises` (`cod_pais`))
ENGINE = InnoDb;
-- -----------------------------------------------------
-- Table `BDbancoSebas`.`clientes`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `BDbancoSebas`.`clientes` (
`cedula` VARCHAR(255) NOT NULL,
`nombre` VARCHAR(255) NOT NULL,
`apellido` VARCHAR(255) NOT NULL,
`cod_ciudad` INT(255) NOT NULL,
PRIMARY KEY (`cedula`),
UNIQUE INDEX `uq_cedula` (`cedula` ASC) VISIBLE,
INDEX `fk_clientes_ciudades` (`cod_ciudad` ASC) VISIBLE,
CONSTRAINT `fk_clientes_ciudades`
FOREIGN KEY (`cod_ciudad`)
REFERENCES `BDbancoSebas`.`ciudades` (`cod_ciudad`))
ENGINE = InnoDb;
-- -----------------------------------------------------
-- Table `BDbancoSebas`.`telefonos`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `BDbancoSebas`.`telefonos` (
`nro_tfno` INT(255) NOT NULL,
`cedula` VARCHAR(255) NOT NULL,
PRIMARY KEY (`nro_tfno`, `cedula`),
UNIQUE INDEX `uq_nro_tfno` (`nro_tfno` ASC) VISIBLE,
INDEX `fk_telefonos_clientes` (`cedula` ASC) VISIBLE,
CONSTRAINT `fk_telefonos_clientes`
FOREIGN KEY (`cedula`)
REFERENCES `BDbancoSebas`.`clientes` (`cedula`))
ENGINE = InnoDb;
-- -----------------------------------------------------
-- Table `BDbancoSebas`.`cuentas`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `BDbancoSebas`.`cuentas` (
`nro_cta` INT(255) NOT NULL,
`cedula` VARCHAR(255) NOT NULL,
`ingreso` INT(255) NOT NULL,
`egreso` INT(255) NOT NULL,
`saldo` INT(255) NOT NULL,
PRIMARY KEY (`nro_cta`),
UNIQUE INDEX `uq_nro_cta` (`nro_cta` ASC) VISIBLE,
INDEX `fk_cuentas_clientes` (`cedula` ASC) VISIBLE,
CONSTRAINT `fk_cuentas_clientes`
FOREIGN KEY (`cedula`)
REFERENCES `BDbancoSebas`.`clientes` (`cedula`))
ENGINE = InnoDb;
-- -----------------------------------------------------
-- Table `BDbancoSebas`.`tiposmovimiento`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `BDbancoSebas`.`tiposmovimiento` (
`mvto_id` INT(255) NOT NULL AUTO_INCREMENT,
`descripcion` VARCHAR(255) NOT NULL,
PRIMARY KEY (`mvto_id`),
UNIQUE INDEX `uq_mvto_id` (`mvto_id` ASC) VISIBLE)
ENGINE = InnoDb;
-- -----------------------------------------------------
-- Table `BDbancoSebas`.`movimientos`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `BDbancoSebas`.`movimientos` (
`nro_cta` INT(255) NOT NULL,
`fecha` DATE NOT NULL,
`secuencia` INT(255) NOT NULL AUTO_INCREMENT,
`mvto_id` INT(255) NOT NULL,
`hora` TIME NOT NULL,
`valor_mvto` INT(255) NOT NULL,
PRIMARY KEY (`secuencia`, `nro_cta`, `fecha`),
INDEX `fk_movimientos_cuentas` (`nro_cta` ASC) VISIBLE,
INDEX `fk_movimientos_tiposmovimiento` (`mvto_id` ASC) VISIBLE,
CONSTRAINT `fk_movimientos_cuentas`
FOREIGN KEY (`nro_cta`)
REFERENCES `BDbancoSebas`.`cuentas` (`nro_cta`),
CONSTRAINT `fk_movimientos_tiposmovimiento`
FOREIGN KEY (`mvto_id`)
REFERENCES `BDbancoSebas`.`tiposmovimiento` (`mvto_id`))
ENGINE = InnoDb;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
try {
Connection conn =
DriverManager.getConnection("jdbc:mysql://localhost/sakila?serverTimezone=UTC", "root",
"jhmb100352JH");
System.out.println("Connection OK");
}catch (Exception e) {
System.err.println(e);
}
}
}
import java.net.*;
import java.io.*;
// establish a connection
try {
socket = new Socket(address, port);
System.out.println("Connected");
// keep reading until "Over is input and shows information from server
while(!line.contentEquals("Over")) {
try {
line = input.readLine();
out.writeUTF(line);
information = inputServer.readUTF();
System.out.println(information);
}
catch(IOException i) {
System.out.println(i);
}
}
try {
input.close();
out.close();
socket.close();
}
catch(IOException i) {
System.out.println(i);
}
}
Conclusiones
Bibliografia