Сокеты TCP/IP

Автор работы: Пользователь скрыл имя, 20 Декабря 2012 в 22:33, реферат

Описание

Если требуется получить доступ к сетевым операциям низкого уровня (класс URL обеспечивает выполнение только сетевых операций высокого уровня), в программе следует использовать класс Socket.
Протокол TCP/IP (базовый протокол сети Internet) основывается на соединениях, устанавливаемых между двумя компьютерами, обычно называемых клиентом и сервером.
Множество приложений для Internet базируются на использовании протокола TCP/IP.

Работа состоит из  1 файл

Сокеты TCP Java.ppt

— 89.00 Кб (Скачать документ)

    {

      if (srvSocket==null) return;

      try

        {

          clientSocket=srvSocket.accept();

DataInputStream input=new DataInputStream(clientSocket.getInputStream());

           String s=input.readLine();

           System.out.println(s);

PrintStream output=new PrintStream(clientSocket.getOutputStream());

           output.println("My Server response!");

           output.println("Connect:"+new java.util.Date().toString());

            s=input.readLine();

            System.out.println("From Client:"+s);

          

 

 

 

 

         output.flush();

           output.close();

           clientSocket.close();

           System.out.println("Client Connect:"+new java.util.Date().toString());

        }

catch(IOException e)

        {

           System.out.println("Exception "+e.getMessage());

        }

    }

}

public static void main(String[] args)

{

  MyServer msrv=new MyServer();

}

}

 

 

 

 

 

import java.net.*;  // Пример 3. Сервер, работающий

                              // параллельно

import java.io.*;

public class MyServer 

{

   int port=4;

   ServerSocket srvSocket;

   boolean flag=true;

public class Session extends Thread

{

Socket clientSocket;

public Session(Socket cSocket)

{

                   clientSocket=cSocket;

}

public void run()

{

 

 

 

 

try

        {

          DataInputStream input=new DataInputStream(clientSocket.getInputStream());

           String s=input.readLine();

           System.out.println(s);

          PrintStream output=new PrintStream(clientSocket.getOutputStream());

           output.println("My Server response!");

           output.println("Connect:"+new java.util.Date().toString());

            s=input.readLine();

            System.out.println("From Client:"+s);

           output.close();

           clientSocket.close();

           System.out.println("Client Connect:"+new java.util.Date().toString());

        }

        

 

 

 

 

catch(IOException e)

        {

           System.out.println("Exception "+e.getMessage());

        }

}

 }

 public MyServer()

   {

    try

    {

      srvSocket=new ServerSocket(port);

      System.out.println("My Server YES ");

    }

    catch(IOException e)

    {

       System.out.println("Error connection"+e.getMessage());

       System.exit(0);

    }

 

 

 

 

 Socket clientSocket;

   while (flag)

    {

      if (srvSocket==null) return;

      try

        {

          clientSocket=srvSocket.accept();

  Session ses=new Session(clientSocket);

    ses.start();  

        }

        catch(IOException e) {

          System.out.println("Exception "+e.getMessage()); }

    }

public static void main(String[] args)

{

  MyServer msrv=new MyServer();

}

}

 

 

 

 

import java.net.*; // Пример 2. Клиент

import java.io.*;

public class MyClient

{

 public static void main(String args[])

 {

   System.out.println("Client running...");

   Socket mySocket;

   String addr="";

   String inStr="";

   boolean flag=true;

   int port=4;

   if (args.length!=1)

   {

     addr="localhost";

   }

   else

     addr=args[0];

 

 

 

 

 

 while (flag)

   {

     try

       {

         mySocket=new Socket(addr, port);

         DataInputStream input=new DataInputStream(mySocket.getInputStream());

         PrintStream output=new PrintStream(mySocket.getOutputStream());

         output.println("Privet, Server!");

         String s=input.readLine();

         System.out.println("Answer1="+s);

         s=input.readLine();

         System.out.println("Answer2="+s);

 

 

 

 

 

 

   System.out.println("Vvedite");

         byte buffer[]=new byte[255]; //Чтение с клавиатуры

          int kol=System.in.read(buffer);

          inStr=new String(buffer);

          inStr=inStr.substring(0,kol-1);

         System.out.println(inStr);

         output.println(inStr);

         output.close();

         input.close();

         mySocket.close();

       }

  catch(IOException e)

       {

         System.out.println("Exception "+e.getMessage());

       }

    }

   }

}

 

 

 

 

 while (flag) // фрагмент примера 3. Клиент

   {

     try

       {

         mySocket=new Socket(addr, port);

         DataInputStream input=new DataInputStream(mySocket.getInputStream());

          DataInputStream input0=new DataInputStream(System.in);

          PrintStream output=new PrintStream(mySocket.getOutputStream());

         output.println("Privet, Server!");

         String s=input.readLine();

         System.out.println("Answer1="+s);

         s=input.readLine();

         System.out.println("Answer2="+s);

 

 

 

 

 

 

System.out.println("Vvedite"); //ввод с клавиатуры

         inStr=input0.readLine();

         System.out.println(inStr);

         output.println(inStr);

         output.close();

         input.close();

         mySocket.close();

       }

 

 

 

 

Пример преобразования типов  в Java

 

 double f,f1;

 String s,s1;

… 

  f=12.34;

  s=String.valueOf(f);

  s1="2.4";

  f1=Double.parseDouble(s1);

  f1=f1/f;

  s1=String.valueOf(f1);

 

 

 

 

 

Пример проверки в Java

 

if (s.equals("km"))

System.out.println("kilometr");

else 

if (s.equals("cm"))

 System.out.println("santimetr");

  else

System.out.println("neverno");

 


Информация о работе Сокеты TCP/IP