实验报告                                                               
    实验一 socket编程                                                                                                                               
    一、实验目的                                                               
    通过socket程序的编写、调试,掌握socket编程的基本方法,了解客户端与服务器端的特点,掌握并熟悉运用socket类与serversocket类。                                                               
    二、实验内容                                                               
    ①学习socket编程使用的类和接口,着重掌握基于tcp协议的socket。 ②编写服务器端的应用程序                                                               
    ③编写客户端的应用程序                                                               
    ④实现服务器端与客户端的交互                                                               
    三、实验代码                                                               
    1.服务器端程序                                                               
    过程:在端口5000上创建一个等待连接的serversocket对象server:server=new serversocket(5000);接着调用server对象的accept()方法等待某客户程序发出连接请求。该方法一直阻塞直到有客户连接到带端口。一旦有客户发送正确请求,则连接成功,accept()方法返回一个socket对象,于是得到了一个新的用于通信的socket对象,通信链路建立成功。然后利用socket类提供的方法创建socket对象的输入流和输出流。此后即于客户端进行通信,直到客户端断开连接即关闭各个流结束通信。                                                               
socket通信报文格式
    代码如下:                                                               
    import java.*;                                                               
    import java.io.*;                                                               
    class  aa                                                               
    {                                                               
    static public void main (string args[]) throws ioexception                                                               
    {                                                               
    serversocket server=null;                                                               
    socket socket=null;                                                               
    inputstream is=null;                                                               
    outputstream os=null;                                                               
    datainputstream in=null;                                                               
    printstream out=null;                                                               
    try                                                               
    {  //在端口5000注册服务                                                                                                       
                           
    server=new serversocket(5000);                                                               
    socket =server.accept();//侦听连接请求,等待连接                                                               
    system.out.println(**********************服务器端界面*************************);                                                               
    system.out.println(与客户端连接成功!);                                                               
    system.out.println();                                                               
    system.out.println(对话内容为:);                                                               
    system.out.println();                                                               
    system.out.println(等待客户发送信息.....);                                                               
    //获取对应的socket的输入/输出流                                                               
    inputstream();                                                               
    utputstream();                                                               
    //建立数据流                                                               
    in= new datainputstream(is);                                                               
    out =new printstream(os);//表示向对方输出                                                               
    string adline();//逐行读取                                                               
    do                                                               

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。