Socket en Java..!!
Hola, este es mi primer post y hare mi hola mundo en el blog, les traigo en java el socket TCP, primero les dare una breve teoría y luego el código para que sepan lo que se esta haciendo..!!
Los sockets formas de comunicación entre programas a través de una red TCP/IP. De hecho, al establecer una conexión via Internet estamos utilizando sockets: los sockets realizan la interfaces entre la aplicación ya el protocolo TCP/IP, estos trabajan en la capa de Transporte del modelo OSI.
Los sockes pueden tener lugar dentro de la misma máquina o a través de una red. Se usan en forma cliente-servidor: es decir cuando un cliente y un servidor establecen una conexión, estos lo hacen a través de un socket. Afortunadamente Java(amo a java por cierto) proporciona para esto las clases
ServerSocket y
Socket, que se encuentran en las clases
java.net.*;.
Servidor.java..!!
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
/**
* @author ISC-Luis
*/
public class Servidor {
public static void main(String argv[]) {
ServerSocket servidor;
Socket cliente;
String nomCliente="Luis Enrique";
try {
servidor = new ServerSocket(7777);
do {
cliente = servidor.accept();
System.out.println("Hola soy el cliente: "+nomCliente);
PrintStream ps = new PrintStream(cliente.getOutputStream());
ps.println("Welcome cliente "+nomCliente);
cliente.close();
} while (true);
}catch (Exception e) {
e.getMessage();
}
}
}
Cliente.java
import java.io.DataInputStream;
import java.net.InetAddress;
import java.net.Socket;
/**
* @author ISC-Luis
*/
public class Cliente {
public static void main(String argv[]) {
InetAddress direccion;
Socket servidor;
try {
direccion = InetAddress.getLocalHost();
servidor = new Socket(direccion, 7777);
DataInputStream datos =new DataInputStream(servidor.getInputStream());
System.out.println(datos.readLine());
servidor.close();
}catch (Exception e) {
e.getMessage();
}
}
}
Si les surgen dudas o algún problema que tengan pueden comentar para solucionarlos y publicarlos en el blog, ya sea java, php, sql, c#, linux, estoy para servirles..!!