ServerSocket和Socket-创新互联

前言

   用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、

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:ServerSocket和Socket-创新互联
网页URL:http://scyanting.com/article/ceecid.html