`
huangfeiNetJava
  • 浏览: 40785 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

java通信初步

 
阅读更多

     以下做些java通信方面的总结,虽然有点零散,但是都是精华。

 

       几个常用命令:

     1.ping(发送回显消息):用于查看网络是否通畅   格式:ping  网络地址

     2.telnet(远程登录):连接到指定IP地址的机器的指定端口  格式:telnet IP地址 端口

     3.netstat:显示当前网路连接状况 格式:netstat -an

     4.ipconfig:查看本机IP及其他信息

 

     创建简单服务器步骤:

     1.在指定端口上常见一个java.net.ServerSocket对象,代码如下:

ServerSocket server  = new ServerSocket(端口名);

    

     2.等待其他客户机来连接:

java.net.Socket client = server.accept();

 

    3. 得到输入输出流对象

//从连接对象上得到输入输出流对象
OutputStream ous = client.getOutputStream();
InputStream ins =  client.getInputStream();

 

    4.使用输入输出流进行通信数据的读写

   String s = "你好!";
   //取得组成这个字符串的字节
    byte[] data = s.getBytes();
    //用输出对象发送
     ous.write(data);
        ous.flush();
    //关闭与客户机的连接
     client.close();

 

   最后整合一下代码就完成了。

 

   要实现一个强大的服务器,至少还需要实现以下几点:

    1. 运用多线程,使服务器可以添加多个客户机

    2. 循环读取数据(消息)

    3. 界面优化

    4. 设置消息发送与读取格式(如:XMPP风格)

   

     几个要点:

     1.阻塞:在accept()、read()、readLine()时线程阻塞

     2.最好把readLine()方法和write()方法写在线程的run()方法内部,构成循环读取与输出

     3.”\n\r“表示一行的结束时,如果用循环readLine()方法,则会看成两行来读取

     4.做界面时,只需将readLine()方法得到的字符串append到JTextArea上即可

     5.服务器和客户机的输入输出流是用同一个端口得到的,才能很好地交互,这边用这个端口的输出流输出数据,那边就可以用这个端口的输入流接受数据了

 

   

   编写命令行客户端:

Socket client = new Socket("服务器IP",服务器端口);

   就主要是这一行代码

 

   通信项目的代码实现,主要抓住输入输出流的动向,灵活运用多线程来解决循环读取问题。当你希望某段代码能一直执行的话,考虑把它写到run()方法里。

 

 

 

 

分享到:
评论

相关推荐

    java教程初步讲解

    Java教程初步讲解旨在为初学者提供一套全面而深入的学习路径,帮助他们快速掌握这门广泛应用于全球的编程语言。Java以其“一次编写,到处运行”的跨平台特性,以及在企业级应用、移动开发(尤其是Android)、云计算...

    Java串口通信数据采控设计与实现

    ### Java串口通信数据采控设计与实现:深入解析 #### 概述 在现代农业生产中,特别是温室智能控制领域,实时数据采集与控制(简称“数据采控”)至关重要,它不仅提升了农业生产的科技含量,还实现了生产管理的...

    Java串口通信数据采控系统的设计与实现.pdf

    ### Java串口通信数据采控系统的设计与实现 #### 概述 本文旨在探讨一种基于Java串口通信的实时数据采控系统的设计与实现方法。该系统特别适用于温室智能控制系统(GICS)中的数据采集与控制任务。文章重点介绍了...

    Java游戏编程初步

    在Java游戏中编程是一个充满挑战和乐趣的领域,它结合了..."Java游戏编程初步.txt"这个文件可能是介绍这些概念的初级教程,对于初学者来说是一个很好的起点。通过深入学习和实践,你可以逐步掌握Java游戏开发的艺术。

    《实战通讯费查询服务器》源码.zip java项目源码

    实战《通讯费查询服务器》项目原型.ppt 可能是项目的初步设计文档或者演示,包含了项目的目标、功能模块、界面设计等信息。这份PPT是理解项目整体结构和设计思路的关键,对于初学者来说,可以通过对比原型和实现的...

    Java移动通信程序设计MIDP范例

    Java移动通信程序设计MIDP范例主要涵盖了Java在移动设备上的应用开发,特别是基于Java 2 Micro Edition (J2ME) 平台的Mobile Information Device Profile (MIDP)。J2ME是Java为嵌入式设备和移动设备设计的一套精简版...

    java语言结构初步

    Java语言结构初步是编程入门的重要阶段,它涵盖了Java的基础语法、数据类型、控制流程、类与对象等核心概念。对于初学者来说,找到合适的资源至关重要,因为这些基础知识将为后续的编程学习打下坚实的基础。 Java是...

    javajava网络教学通信系统.doc

    【Java网络教学通信系统】是基于Java和JavaScript技术构建的,旨在利用现代互联网技术改进教育方式,提升教学效率。该系统设计包含五大功能模块,分别是实时教学模块、文件下载模块、文件上传模块、文本编辑器模块和...

    网络串口测试工具-配合java.rar

    1. Java集成:在Java环境中,开发者可以使用JSerialComm、RXTX等库来实现串口通信,结合网络串口测试工具,可以方便地进行单元测试和集成测试,确保代码的正确性。 2. .NET集成:对于.NET开发者,System.IO.Ports...

    Java游戏编程初步2.rar_Java游戏

    这篇初步教程将引导你探索Java游戏编程的基础,让你在游戏开发的世界中迈出第一步。首先,我们来深入理解Java游戏编程的一些核心概念和技术。 Java作为一种广泛使用的面向对象编程语言,以其跨平台性、高效性和强大...

    JavaServlet程序设计初步

    JavaServlet程序设计初步是IT领域中关于Web开发的一项基础技术,它是Java EE(企业版)平台的一部分,用于构建动态Web应用程序。本节将深入探讨JavaServlet的核心概念、工作原理以及如何进行基本的程序设计。 一、...

    Java解惑(中文版)_java_java解惑_solve65p_

    12. **网络编程**:理解Socket编程,以及如何在Java中实现客户端和服务器端的通信。 13. **反射和注解**:了解Java的反射机制,以及注解(Annotation)的使用和自定义。 14. **JNI(Java Native Interface)**:...

    JAVA网络通信系统的研究与开发(源代码+文档+开题报告).zip

    Java网络通信系统是一种基于Java语言实现的用于网络间数据传输和交互的应用程序。在这个项目中,开发者通过研究和开发,构建了一个能够实现高效、安全、可靠网络通信的平台。源代码、文档和开题报告提供了从设计思路...

    java2参考大全

    书中首先对Java语言的基础知识进行了详细介绍,这包括Java的核心概念、基础语法和基本结构,旨在让读者能够对Java语言有一个初步的认识和理解。之后,书中通过具体的实例,对Java语言进行了系统化的讲解,帮助读者更...

    java初步指南

    11. **网络编程**:Java的`java.net`包提供了解析URL、创建套接字连接和进行HTTP通信等功能,便于开发网络应用。 12. **反射和注解**:反射允许程序在运行时检查类、接口、字段和方法的信息,甚至动态调用方法。...

    JAVA网络通信系统的研究与开发(源代码+论文+开题报告).rar

    Java网络通信系统是一种基于Java编程语言构建的网络应用程序,它允许不同设备间的高效、可靠的信息交换。本项目涵盖了从系统的设计、实现到评估的全过程,包括源代码、论文和开题报告,为学习者提供了全面的理解和...

    java最全开发文档

    Java SE 6引入了一些重要的新特性,如改进的I/O性能、增强的Swing组件、动态语言支持(JSR 223)、XML处理API的改进以及对JavaFX的初步支持。此外,它还加强了安全性和性能,优化了内存管理和多线程处理。 理解并...

Global site tag (gtag.js) - Google Analytics