`

Java Socket 的一个实例程序

    博客分类:
  • java
阅读更多
Java通过TCP协议的通信的编程都是通过Socket ,不会很难,一般通用的就是下面这个小例子。大概就能了解Socket的编程方法了。

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

public class EchoServer {
public static void main(String[] args) {
  try {
   ServerSocket s = new ServerSocket(8500);
   Socket incoming = s.accept();
   BufferedReader in = new BufferedReader(new InputStreamReader(
     incoming.getInputStream()));
   PrintWriter out = new PrintWriter(incoming.getOutputStream(), true /* autoFlush */);

   out.println("Hello! Enter BYE to exit.");

   boolean done = false;
   while (!done) {
    String line = in.readLine();
    if (line == null)
     done = true;
    else {
     out.println("Echo: " + line);
     if (line.trim().equals("BYE"))
      done = true;
    }
   }
   incoming.close();
  } catch (Exception e) {
   System.out.println(e);
  }
}
}



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

public class EchoClient {
public static void main(String args[]) {
  try {
   if (args.length != 1) {
    System.out.println("USAGE: java Client servername");
    return;
   }
   String connectto = args[0];
   Socket connection;
   // connect to server
   if (connectto.equals("localhost")) {
    connection = new Socket(InetAddress.getLocalHost(), 8500);
   } else {
    connection = new Socket(InetAddress.getByName(connectto), 8500);
   }
   BufferedReader input = new BufferedReader(new InputStreamReader(
     connection.getInputStream()));
   PrintWriter out = new PrintWriter(connection.getOutputStream(),
     true /* autoFlush */);

   // read information from server
   String info;
   info = input.readLine();
   System.out.println(info);
   boolean done = false;
   BufferedReader in = new BufferedReader(new InputStreamReader(
     System.in));
   String sInput;
   while (!done) {
    sInput = in.readLine();
    out.println(sInput);
    if (sInput.equalsIgnoreCase("bye"))
     done = true;
    info = input.readLine();
    System.out.println(info);
   }
   connection.close();
  } catch (SecurityException e) {
   System.out.println("SecurityException when connecting Server!");
  } catch (IOException e) {
   System.out.println("IOException when connecting Server!");
  }
}
}

分享到:
评论

相关推荐

    Java Socket实例(服务器多线程)

    Java Socket实例(服务器多线程) 之前3积分下的代码,代码不错就是太贵,现本人分享出来

    Java源码包100个设计实例.zip

    ejbCreate函数用于初始化一个EJB实例 EJB中JNDI的使用源码例子 EJB的真实世界模型(源代码).rar ftp文件传输 ftp简易服务器.rar HAHA CHAT Java仿QQ聊天程序源代码.rar html 标记大全.rar iCHAT聊天室基于Java.rar ...

    Python与Java间Socket通信实例代码

    主要介绍了Python与Java间Socket通信实例代码的相关资料,需要的朋友可以参考下

    java源码包---java 源码 大量 实例

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    android socket 编程实例

    android socket 编程实例 客户端是android应用程序, socket服务器端使用java作为服务器

    JAVA上百实例源码以及开源项目源代码

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    用Java Socket实现一个简单的基于P2P范型的即时聊天系统。

    暂时仅仅设计了以下几个功能点: 1.点对点单人聊天; 2.多人在线同时聊天; 3.用户可以自由加入和退出系统; 4.具备用户在线状态监听;

    三步学会Java Socket编程

    在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等 的,并没有差别,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是...

    java https ssl 实例 例子

    Java sslSocket 聊天实例是一个简单的 Java 程序,演示了如何使用 SSL/TLS 协议来建立安全的连接。该实例包括客户端和服务器端,客户端用于发送消息,服务器端用于接收消息。 八、用 COMMVIEW 工具截获浏览器访问...

    Java TCPIP Socket编程 源码

    一个Socket实例代表了TCP连接的一个客户端,而一个ServerSocket实例代表了TCP连接的一个服务器端,一般在TCP Socket编程中,客户端有多个,而服务器端只有一个,客户端TCP向服务器端TCP发送连接请求,服务器端的...

    JAVA上百实例源码以及开源项目

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    JAVA上百实例源码以及开源项目源代码 java开源包2

    ejbCreate函数用于初始化一个EJB实例 5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,...

    在 Java 上实现的 Socket.IO 服务器 实时java框架

    该项目是Socket.IO服务器的开源 Java 实现。基于Netty服务器框架。 根据 Apache License 2.0 获得许可。 支持1.x - 4.x版本的Socket.IO 客户端 支持 xhr 轮询传输 支持websocket传输 支持命名空间和房间 支持ack...

    基于java socket实现 聊天小程序

    主要介绍了基于java socket实现 聊天小程序,代码分为服务器和客户端,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

    Java 实例 - Socket 实现多线程服务器程序源代码+详细指导教程.zip

    Java 实例 - Socket 实现多线程服务器程序源代码+详细指导教程.zip

    JAVA Socket编程[局域网聊天小例子]

    我们上培训时做的一个小例子,用Socket和线程编写的一个局域网聊天的小例子。需要了解线程的知识!是个控制台程序……演示需要在CMD下运行,同时运行两个就好了。关键在于学习代码~嘿嘿

    Java Socket多人聊天室

    使用 Socket 、Java ,开发的一个 C / S 架构的多人聊天室

    Java网络编程实例 (作者:孙一林 彭波)

    每个实例都可以作为一个独立程序应用于网络中,也可以作为网络工程项目的一部分应用于网络项目中。\r\n 本书面向具有一定Java语言基础的读者,可作为大学本科和研究生的Java语言高级实验教材。也是一本具有实用价值...

Global site tag (gtag.js) - Google Analytics