实现了基于TCP的Java Socket编程实例代码

 更新时间:2013年12月30日 15:29:45   作者:  
这篇文章主要介绍了基于TCP的Java Socket编程实例代码,有需要的朋友可以参考一下

实现了基于TCP的Java Socket编程,功能很简单:客户端向服务器端输出一名话"connect",服务器端接收输出到控制台并向客户端输出一名话"Hello",客户端接收并输出。

1.服务器端

复制代码 代码如下:

package javase.net.socket; 

import java.io.DataInputStream; 
import java.io.DataOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.OutputStream; 
import java.net.ServerSocket; 
import java.net.Socket; 

public class TCPServer { 
    public static void main(String[] args) { 
        try { 
            ServerSocket serverSocket = new ServerSocket(8888); 
            Socket socket = serverSocket.accept(); 
            // 读取客户端数据 
            InputStream info = socket.getInputStream(); 
            DataInputStream dis = new DataInputStream(info); 
            System.out.println(dis.readUTF()); 

            // 向客户端输出数据 
            OutputStream os = socket.getOutputStream(); 
            DataOutputStream dos = new DataOutputStream(os); 
            dos.writeUTF("Hello!"); 
            dos.flush(); 
        } catch (IOException e) { 
            e.printStackTrace(); 
        } 
    } 

2.客户端:

复制代码 代码如下:

package javase.net.socket; 

import java.io.DataInputStream; 
import java.io.DataOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.OutputStream; 
import java.net.Socket; 
import java.net.UnknownHostException; 

public class TCPClient { 
    public static void main(String[] args) { 
        try { 
            Socket socket = new Socket("192.168.1.123", 8888); 
            // 向服务器端发送数据 
            OutputStream os =  socket.getOutputStream(); 
            DataOutputStream bos = new DataOutputStream(os); 
            bos.writeUTF("Connect"); 
            bos.flush(); 

            // 接收服务器端数据 
            InputStream is = socket.getInputStream(); 
            DataInputStream dis = new DataInputStream(is); 
            System.out.println(dis.readUTF()); 
        } catch (UnknownHostException e) { 
            e.printStackTrace(); 
        } catch (IOException e) { 
            e.printStackTrace(); 
        } 
    } 

相关文章

  • Java面向对象程序设计:继承,多态用法实例分析

    Java面向对象程序设计:继承,多态用法实例分析

    这篇文章主要介绍了Java面向对象程序设计:继承,多态用法,结合实例形式分析了java继承与多态的相关概念、原理、实现方法与操作注意事项,需要的朋友可以参考下
    2020-04-04
  • springMVC利用FastJson接口返回json数据相关配置详解

    springMVC利用FastJson接口返回json数据相关配置详解

    本篇文章主要介绍了springMVC利用FastJson接口返回json数据相关配置详解,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Spring事务框架之TransactionStatus源码解析

    Spring事务框架之TransactionStatus源码解析

    这篇文章主要为大家介绍了Spring事务框架之TransactionStatus源码示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • SpringBoot集成logback打印彩色日志的代码实现

    SpringBoot集成logback打印彩色日志的代码实现

    Logback是由log4j创始人设计的另一个开源日志组件,默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台,本文给大家介绍了SpringBoot集成logback打印彩色日志,需要的朋友可以参考下
    2024-03-03
  • IntelliJ IDEA 部署 Web 项目,看这一篇够了!

    IntelliJ IDEA 部署 Web 项目,看这一篇够了!

    这篇文章主要介绍了IntelliJ IDEA 部署 Web 项目的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • Java日志API管理最佳实践详解

    Java日志API管理最佳实践详解

    这篇文章主要介绍了Java日志API管理最佳实践详解,记录日志只是有效地利用日志的第一步,更重要的是如何对程序运行时产生的日志进行处理和分析。,需要的朋友可以参考下
    2019-06-06
  • 一文探索Apache HttpClient如何设定超时时间

    一文探索Apache HttpClient如何设定超时时间

    Apache HttpClient是一个流行的Java库,用于发送HTTP请求,这篇文章主要为大家介绍了Apache HttpClient如何设定超时时间,感兴趣的小伙伴可以学习一下
    2023-10-10
  • Springboot添加支付接口

    Springboot添加支付接口

    这篇文章主要介绍了springboot如何添加支付接口,帮助大家更好得理解和学习使用springboot框架,感兴趣的朋友可以了解下
    2021-04-04
  • MyBatis常见报错问题及解决方案

    MyBatis常见报错问题及解决方案

    这篇文章主要介绍了MyBatis常见报错问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Java调用ChatGPT的实现代码

    Java调用ChatGPT的实现代码

    这篇文章主要介绍了Java调用ChatGPT的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-02-02

最新评论