SlideShare una empresa de Scribd logo
1 de 8
BENEMERITA UNIVERSIDAD
 AUTONOMA DE PUEBLA




 FACULTAD DE CIENCIAS
  DE LA COMPUTACION




  PROGRAMACION CONCURRENTE Y PARALELA




               SOCKETS
LEZAMA SANCHEZ ANA LAURA
                                                                VALENCIA TOXQUI HUMBERTO




1. OBJETIVO DEL PROGRAMA

 Comunicarse con direcciones de Internet y con ellas obtener el ip del servidor. El otro programa
obtiene el ip de nuestra computadora. Lee un archivo a traves de internet. Como leer un archivo
de texto y uno de imagen(GIF)



2.- ¿QUE CLASES UTILIZA DEL PAQUETE NET DE JAVA?
InetAddress
URL
Socket

3.- ¿CUÁL ES LA RELACIÓN CON LOS PROCESOS CONCURRENTES?
   Esto hace que se pueda conseguir comunicar computadoras dentro de una red, incluso en
Internet permitiendo asi realizar programas concurrentes en red.

                                         PROGRAMAS
PROGRAMA 1

/*Como obtener la direccion IP local*/

import java.net.*;
public class pruebaGetLocalHost
  {
    public static void main(String args[])
         {
            InetAddress miDireccionIP = null;
            Try
           {
                 miDireccionIP = InetAddress.getLocalHost();
              }
            catch(UnknownHostException e){}
System.out.println(miDireccionIP);
        }
  }




PROGRAMA 2

/*Como leer un archivo a traves d Internet*/

import java.net.*;
import java.io.*;

public class pruebaLeerURL
 {
    public static void main(String args[])
         {
            Try
           {
                 URL javasoft = null;
                 DataInputStream dis = null;
                 javasoft = new URL("http://www.javasoft.com");
                 dis = new DataInputStream(javasoft.openStream());
                 String line = dis.readLine();
                 while (line != null)
                   {
                     System.out.println(line);
                     line = dis.readLine();
                   }
              }
   catch (IOException e)
     {
       System.out.println("Error" + e.getMessage());
     }
   }
}
PROGRAMA 3

/*Como obtener la direccion IP de un nombre de dominio*/

import java.net.*;
public class obtenerIPdeDNS
  {
    public static void main(String args[])
     {
         InetAddress javasoft = null;
         try
        {
              javasoft = InetAddress.getByName("www.javasoft.com");
           }
         catch (UnknownHostException e)
           {
             System.out.println(javasoft);
           }
         System.out.println(javasoft);
     }
}




PROGRAMA 4
/*Como leer un archivo de texto y uno de imagen(GIF)*/

import java.applet.*;
import java.net.*;
import java.io.*;
import java.awt.*;
import java.awt.image.*;
public class pruebaGetContent extends Applet
 {
   String cadena;
   Image imagen;
   public void init()
     {
         try{ //leer un archivo de texto
         URL arch_texto = new URL(getDocumentBase(),"simple.texto");
         cadena = (String) arch_texto.getContent();
         //caargar un archivo grafico
         URL u = new URL(getDocumentBase(), "simple.gif");
         imagen = this.createImage((ImageProducer)
         u.getContent());
     }
   catch (MalformedURLException e)
     {
         System.out.println("Error:" + e.getMessage());
     }
   catch (IOException e)
     {
         System.out.println("Error:" + e.getMessage());
     }
   repaint();
}
 public void paint(Graphics g)
    {
         g.drawImage(imagen, 0, 0, this);
         g.drawString(cadena, 75,75);
    }
}
PROGRAMA 5

/*Como enviar correo electronico desde una aplicacion en java*/

import java.io.*;
import java.net.*;
public class pruebaCorreoJava
{
  static PrintStream ps = null; //envio de mensajes
  static DataInputStream dis = null; //recepción de mensajes
  public static void enviar(String str) throws IOException
   {
         ps.println(str); //enviar un texto SMTP
         ps.flush(); //descarga el texto
         System.out.println("Java envió" + str);
   }
  public static void recibir() throws IOException
   {
         String readstr = dis.readLine(); //obtener la respuesta SMTP
         System.out.println("respuesta SMTP:" + readstr);
   }
  public static void main(String args[])
   {
         String HELO = "HELO";
         String MAIL_FROM = "MAIL_FROM:remitente@correo.com.mx";
         String RCTP_TO = "RCTP_TO: receptor@correo.com.mx";
         String DATA = "DATA"; //inicio del mensaje
         String ASUNTO = "Subject: Java es excelente!n";
          //Nota: "rn.rn" indica el final del mensaje
         String MENSAJE = "Java envió esto!rn.rn";
         Socket smtp = null; //Socket de SMTP
         try
        { //Nota: 25 es el número de puerto SMTP predeterminado
                 smtp = new Socket("smtp.servidor.com.mx",25);
                 OutputStream os = smtp.getOutputStream();
                 ps = new PrintStream(os);
                 InputStream is = smtp.getInputStream();
                 dis = new DataInputStream(is);
            }
         catch (IOException e)
            {
                 System.out.println("Error al conectar:" + e);
            }
try
        { //enviar el HELO
             String loc = InetAddress.getLocalHost().getHostName();
             enviar(HELO + loc);
             recibir();             //obtener la respuesta SMTP
             enviar(MAIL_FROM); //enviar el remitente
             recibir();             //obtener la respuesta SMTP
             enviar(RCTP_TO);        //enviar el receptor
             recibir();             //obtener la respuesta SMTP
             enviar(DATA);         //enviar el inicio de mensaje
             recibir();             //obtener la respuesta SMTP
             enviar(ASUNTO);        //enviar el asunto
             recibir();             //obtener la respuesta SMTP
             enviar(MENSAJE);       //enviar el contenido del mensaje
             recibir();             //obtener la respuesta SMTP
             smtp.close();            //cerrar la conexión
           }
catch (IOException e)
           {
                System.out.println("Error al enviar: " + e);
           }
         System.out.println("Correo enviado!");
    }
  }




PROGRAMA 6

/*Como obtener el URL de la pagina de HTML de un applet*/

import java.applet.*;
import java.net.*;
import java.awt.*;
public class pruebaGetDocumentBase extends Applet
  {
public void init()
        {
           URL html = getDocumentBase();
           System.out.println(html);;
        }
}

Más contenido relacionado

La actualidad más candente

Como monitorear asterisk utilizando nrpe de nagios
Como monitorear asterisk utilizando nrpe de nagiosComo monitorear asterisk utilizando nrpe de nagios
Como monitorear asterisk utilizando nrpe de nagiosGuillermo Henriquez Gonzalez
 
Como monitorear asterisk utilizando nrpe de nagios
Como monitorear asterisk utilizando nrpe de nagiosComo monitorear asterisk utilizando nrpe de nagios
Como monitorear asterisk utilizando nrpe de nagiosMcp Servicios
 
Evadiendo antivirus - uso de crypters
Evadiendo antivirus - uso de cryptersEvadiendo antivirus - uso de crypters
Evadiendo antivirus - uso de cryptersINCIDE
 
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En RedesLw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En Redesguest5d7f33c
 
Monitoreando servidores Elastix con Nagios
Monitoreando servidores Elastix con NagiosMonitoreando servidores Elastix con Nagios
Monitoreando servidores Elastix con NagiosPaloSanto Solutions
 
Explicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundoExplicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundojubacalo
 
CONECTAR C# CON POSTGRESQL USANDO NPGSQL 2.0.11
CONECTAR  C# CON POSTGRESQL  USANDO NPGSQL 2.0.11CONECTAR  C# CON POSTGRESQL  USANDO NPGSQL 2.0.11
CONECTAR C# CON POSTGRESQL USANDO NPGSQL 2.0.11Miguel Angel
 
Escaner
EscanerEscaner
EscanerTensor
 
Forms 10g procedimientos y cursores
Forms 10g procedimientos y cursoresForms 10g procedimientos y cursores
Forms 10g procedimientos y cursoresEdwin Romero
 
Cuckoosandbox
CuckoosandboxCuckoosandbox
CuckoosandboxTensor
 
Depuración Avanzada Con Win Dbg Y Vs 2010 (Basica)
Depuración Avanzada Con Win Dbg Y Vs 2010 (Basica)Depuración Avanzada Con Win Dbg Y Vs 2010 (Basica)
Depuración Avanzada Con Win Dbg Y Vs 2010 (Basica)Pablo Alvarez Doval
 

La actualidad más candente (16)

Thread
ThreadThread
Thread
 
Como monitorear asterisk utilizando nrpe de nagios
Como monitorear asterisk utilizando nrpe de nagiosComo monitorear asterisk utilizando nrpe de nagios
Como monitorear asterisk utilizando nrpe de nagios
 
Como monitorear asterisk utilizando nrpe de nagios
Como monitorear asterisk utilizando nrpe de nagiosComo monitorear asterisk utilizando nrpe de nagios
Como monitorear asterisk utilizando nrpe de nagios
 
Tema servlets
Tema servletsTema servlets
Tema servlets
 
Evadiendo antivirus - uso de crypters
Evadiendo antivirus - uso de cryptersEvadiendo antivirus - uso de crypters
Evadiendo antivirus - uso de crypters
 
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En RedesLw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
 
Monitoreando servidores Elastix con Nagios
Monitoreando servidores Elastix con NagiosMonitoreando servidores Elastix con Nagios
Monitoreando servidores Elastix con Nagios
 
Networking
NetworkingNetworking
Networking
 
Java 7- Java Day Guatemala
Java 7- Java Day GuatemalaJava 7- Java Day Guatemala
Java 7- Java Day Guatemala
 
Explicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundoExplicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundo
 
CONECTAR C# CON POSTGRESQL USANDO NPGSQL 2.0.11
CONECTAR  C# CON POSTGRESQL  USANDO NPGSQL 2.0.11CONECTAR  C# CON POSTGRESQL  USANDO NPGSQL 2.0.11
CONECTAR C# CON POSTGRESQL USANDO NPGSQL 2.0.11
 
Recursivo
RecursivoRecursivo
Recursivo
 
Escaner
EscanerEscaner
Escaner
 
Forms 10g procedimientos y cursores
Forms 10g procedimientos y cursoresForms 10g procedimientos y cursores
Forms 10g procedimientos y cursores
 
Cuckoosandbox
CuckoosandboxCuckoosandbox
Cuckoosandbox
 
Depuración Avanzada Con Win Dbg Y Vs 2010 (Basica)
Depuración Avanzada Con Win Dbg Y Vs 2010 (Basica)Depuración Avanzada Con Win Dbg Y Vs 2010 (Basica)
Depuración Avanzada Con Win Dbg Y Vs 2010 (Basica)
 

Similar a Sockets

Similar a Sockets (20)

Ejercicios en Netbeans
Ejercicios en NetbeansEjercicios en Netbeans
Ejercicios en Netbeans
 
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
 
2 f programas
2 f programas2 f programas
2 f programas
 
2 f programas
2 f programas2 f programas
2 f programas
 
Hola mundo
Hola mundoHola mundo
Hola mundo
 
Clase 21 programacion ejb 3.0
Clase 21 programacion ejb 3.0Clase 21 programacion ejb 3.0
Clase 21 programacion ejb 3.0
 
Creacion de proyecto_en_netbeans
Creacion de proyecto_en_netbeansCreacion de proyecto_en_netbeans
Creacion de proyecto_en_netbeans
 
Java: Entrada y salida de datos por consola en windows.
Java: Entrada y salida de datos por consola en windows.Java: Entrada y salida de datos por consola en windows.
Java: Entrada y salida de datos por consola en windows.
 
Programas en netbeans
Programas en netbeansProgramas en netbeans
Programas en netbeans
 
Constructores & excepciones
Constructores & excepcionesConstructores & excepciones
Constructores & excepciones
 
Unit Testing - GTUG
Unit Testing - GTUGUnit Testing - GTUG
Unit Testing - GTUG
 
Desarrollo De Programas Ejemplos 01
Desarrollo De Programas Ejemplos 01Desarrollo De Programas Ejemplos 01
Desarrollo De Programas Ejemplos 01
 
Desarrollo de programas_ejemplos_01
Desarrollo de programas_ejemplos_01Desarrollo de programas_ejemplos_01
Desarrollo de programas_ejemplos_01
 
Lw2010 Pedro Valera
Lw2010 Pedro ValeraLw2010 Pedro Valera
Lw2010 Pedro Valera
 
Java Y Oracle
Java Y OracleJava Y Oracle
Java Y Oracle
 
Java Y Oracle
Java Y OracleJava Y Oracle
Java Y Oracle
 
P R A C T I C A2
P R A C T I C A2P R A C T I C A2
P R A C T I C A2
 
Curso de Desarrollo Web 2
Curso de Desarrollo Web 2Curso de Desarrollo Web 2
Curso de Desarrollo Web 2
 
Lab7-POO
Lab7-POOLab7-POO
Lab7-POO
 
Multitarea e hilos en java con ejemplos
Multitarea e hilos en java con ejemplosMultitarea e hilos en java con ejemplos
Multitarea e hilos en java con ejemplos
 

Sockets

  • 1. BENEMERITA UNIVERSIDAD AUTONOMA DE PUEBLA FACULTAD DE CIENCIAS DE LA COMPUTACION PROGRAMACION CONCURRENTE Y PARALELA SOCKETS
  • 2. LEZAMA SANCHEZ ANA LAURA VALENCIA TOXQUI HUMBERTO 1. OBJETIVO DEL PROGRAMA Comunicarse con direcciones de Internet y con ellas obtener el ip del servidor. El otro programa obtiene el ip de nuestra computadora. Lee un archivo a traves de internet. Como leer un archivo de texto y uno de imagen(GIF) 2.- ¿QUE CLASES UTILIZA DEL PAQUETE NET DE JAVA? InetAddress URL Socket 3.- ¿CUÁL ES LA RELACIÓN CON LOS PROCESOS CONCURRENTES? Esto hace que se pueda conseguir comunicar computadoras dentro de una red, incluso en Internet permitiendo asi realizar programas concurrentes en red. PROGRAMAS PROGRAMA 1 /*Como obtener la direccion IP local*/ import java.net.*; public class pruebaGetLocalHost { public static void main(String args[]) { InetAddress miDireccionIP = null; Try { miDireccionIP = InetAddress.getLocalHost(); } catch(UnknownHostException e){}
  • 3. System.out.println(miDireccionIP); } } PROGRAMA 2 /*Como leer un archivo a traves d Internet*/ import java.net.*; import java.io.*; public class pruebaLeerURL { public static void main(String args[]) { Try { URL javasoft = null; DataInputStream dis = null; javasoft = new URL("http://www.javasoft.com"); dis = new DataInputStream(javasoft.openStream()); String line = dis.readLine(); while (line != null) { System.out.println(line); line = dis.readLine(); } } catch (IOException e) { System.out.println("Error" + e.getMessage()); } } }
  • 4. PROGRAMA 3 /*Como obtener la direccion IP de un nombre de dominio*/ import java.net.*; public class obtenerIPdeDNS { public static void main(String args[]) { InetAddress javasoft = null; try { javasoft = InetAddress.getByName("www.javasoft.com"); } catch (UnknownHostException e) { System.out.println(javasoft); } System.out.println(javasoft); } } PROGRAMA 4
  • 5. /*Como leer un archivo de texto y uno de imagen(GIF)*/ import java.applet.*; import java.net.*; import java.io.*; import java.awt.*; import java.awt.image.*; public class pruebaGetContent extends Applet { String cadena; Image imagen; public void init() { try{ //leer un archivo de texto URL arch_texto = new URL(getDocumentBase(),"simple.texto"); cadena = (String) arch_texto.getContent(); //caargar un archivo grafico URL u = new URL(getDocumentBase(), "simple.gif"); imagen = this.createImage((ImageProducer) u.getContent()); } catch (MalformedURLException e) { System.out.println("Error:" + e.getMessage()); } catch (IOException e) { System.out.println("Error:" + e.getMessage()); } repaint(); } public void paint(Graphics g) { g.drawImage(imagen, 0, 0, this); g.drawString(cadena, 75,75); } }
  • 6. PROGRAMA 5 /*Como enviar correo electronico desde una aplicacion en java*/ import java.io.*; import java.net.*; public class pruebaCorreoJava { static PrintStream ps = null; //envio de mensajes static DataInputStream dis = null; //recepción de mensajes public static void enviar(String str) throws IOException { ps.println(str); //enviar un texto SMTP ps.flush(); //descarga el texto System.out.println("Java envió" + str); } public static void recibir() throws IOException { String readstr = dis.readLine(); //obtener la respuesta SMTP System.out.println("respuesta SMTP:" + readstr); } public static void main(String args[]) { String HELO = "HELO"; String MAIL_FROM = "MAIL_FROM:remitente@correo.com.mx"; String RCTP_TO = "RCTP_TO: receptor@correo.com.mx"; String DATA = "DATA"; //inicio del mensaje String ASUNTO = "Subject: Java es excelente!n"; //Nota: "rn.rn" indica el final del mensaje String MENSAJE = "Java envió esto!rn.rn"; Socket smtp = null; //Socket de SMTP try { //Nota: 25 es el número de puerto SMTP predeterminado smtp = new Socket("smtp.servidor.com.mx",25); OutputStream os = smtp.getOutputStream(); ps = new PrintStream(os); InputStream is = smtp.getInputStream(); dis = new DataInputStream(is); } catch (IOException e) { System.out.println("Error al conectar:" + e); }
  • 7. try { //enviar el HELO String loc = InetAddress.getLocalHost().getHostName(); enviar(HELO + loc); recibir(); //obtener la respuesta SMTP enviar(MAIL_FROM); //enviar el remitente recibir(); //obtener la respuesta SMTP enviar(RCTP_TO); //enviar el receptor recibir(); //obtener la respuesta SMTP enviar(DATA); //enviar el inicio de mensaje recibir(); //obtener la respuesta SMTP enviar(ASUNTO); //enviar el asunto recibir(); //obtener la respuesta SMTP enviar(MENSAJE); //enviar el contenido del mensaje recibir(); //obtener la respuesta SMTP smtp.close(); //cerrar la conexión } catch (IOException e) { System.out.println("Error al enviar: " + e); } System.out.println("Correo enviado!"); } } PROGRAMA 6 /*Como obtener el URL de la pagina de HTML de un applet*/ import java.applet.*; import java.net.*; import java.awt.*; public class pruebaGetDocumentBase extends Applet {
  • 8. public void init() { URL html = getDocumentBase(); System.out.println(html);; } }