博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ServerSocket和Socket
阅读量:5863 次
发布时间:2019-06-19

本文共 2277 字,大约阅读时间需要 7 分钟。

前言

      用ServerSocket和Socket做了个Server、Client通信的demo,以及学习下在这个demo过程中用到java.net、java.io包下几个常用的类。

 

Server

import java.net.*;import java.io.*;public class HttpServer{        public static void main(String[] args){        new HttpServer().start();    }        private ServerSocket serversocket=null;        public HttpServer(){        try{            serversocket=new ServerSocket(5000);//监听客户端端口5000的socket请求            System.out.println("服务器启动");        }catch(IOException e){            e.printStackTrace();        }    }    public void start(){        Socket socket=null;        while(true){            try{                socket=serversocket.accept(); //接受客户端请求socket                System.out.println("address:"+socket.getInetAddress()+":"+socket.getLocalPort());                                OutputStream os =socket.getOutputStream();                BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(os));                //向客户端发送一条消息                bw.write("测试服务器通信\n");                bw.flush();            }catch(IOException e){                e.printStackTrace();                System.out.println("连接断开");            }finally{                try{                    if(socket !=null){                        socket.close();                    }                }catch(IOException e){                                    }            }        }    }}

Client

import java.net.*;import java.io.*;public class Client{        public static void main(String[] args){        Socket socket=null;        try{            socket =new Socket("127.0.0.1",5000);                                    InputStream is =socket.getInputStream();            InputStreamReader isr=new InputStreamReader(is);            BufferedReader br =new BufferedReader (isr);            String mess=br.readLine();                        System.out.println("mess:"+mess);        }catch(IOException e){            e.printStackTrace();        }finally{            try{                if(socket !=null){                    socket.close();                }            }catch(IOException e){                            }        }            }    }

 总结

     java.net包内几个常用的类: 

         ServerSocket、

         Socket、

         OutputStream、InputStream、

     InputStreamReader、OutputStreamWriter、

     BufferedReader、BufferedWriter、 

         InetAddress、

        

         

        

 

转载地址:http://twynx.baihongyu.com/

你可能感兴趣的文章
javascript中日期格式与时间戳之间的转化
查看>>
Sql Server系列:查询分页语句
查看>>
JavaScript. The core.
查看>>
VoltDB公布4.0版本号,大步提高内存实时分析速度,进军操作数据库市场
查看>>
Visual Studio跨平台开发实战(1) - Hello Xamarin!
查看>>
JavaScript 语言基础知识点总结(思维导图)
查看>>
The connection to adb is down, and a severe error has occured.问题解决方法小结
查看>>
cppunit使用详解
查看>>
SVN的Hooks功能--强制添加注释
查看>>
gdbserver 移植与多线程调试
查看>>
python判断文件和文件夹是否存在、创建文件夹
查看>>
AngularJs 表单提交按钮状态
查看>>
数据绑定(八)使用Binding的RelativeSource
查看>>
2015自然基金一审结果:项目申请的共性问题。
查看>>
咏史---左思
查看>>
Linux中find用法
查看>>
SQL SERVER 查询表或字段在哪里使用过
查看>>
[转]软件测试的完整分类
查看>>
MATLAB新手教程
查看>>
关于 android 的 view.getLeft(), getRight(), getTop(), getBottom() 的一些疑惑(坑)解答
查看>>