文档章节

java socket

postdep
 postdep
发布于 2014/10/09 10:30
字数 447
阅读 167
收藏 10

1. [代码][Java]代码     

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
packagecom.gufengxiachen.sthreadchatapp;
/**
 * @author GUXIA
 */
importjava.io.BufferedReader;
importjava.io.DataInputStream;
importjava.io.DataOutputStream;
importjava.io.InputStream;
importjava.io.InputStreamReader;
importjava.io.OutputStream;
importjava.net.ServerSocket;
importjava.net.Socket;
 
publicclassChatServer {
    publicstaticvoidmain(String[] args) {
        try{
            //创建服务器端套接字,接受来自客户端的连接请求
            ServerSocket ss=newServerSocket(9999);
            Socket s=ss.accept();
             
            //获取客户端套接字的输出流
            OutputStream os=s.getOutputStream();
            DataOutputStream dos=newDataOutputStream(os);
             
            //获取客户端输入流
            InputStream is=s.getInputStream();
            DataInputStream dis=newDataInputStream(is);
             
            //创建字符输入流接受键盘输入
            InputStreamReader isr=newInputStreamReader(System.in);
            BufferedReader br=newBufferedReader(isr);
             
            String message;
            while(true){
                //获取客户端输入流,并打印在屏幕上,如果客户端说的是“再见”,退出
                message=dis.readUTF();
                System.out.println("客户端:"+message);
                if(message.equals("再见"))
                    break;
                //读取键盘输入并写入到输出流(客户端的输入流)
                message=br.readLine();
                dos.writeUTF(message);
                 
            }
            dis.close();
            dos.close();
            ss.close();
            s.close();
             
             
        }catch(Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }
    }
 
}

2. [代码][Java]代码     

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
packagecom.gufengxiachen.sthreadchatapp;
/**
 * @author GUXIA
 */
importjava.io.BufferedReader;
importjava.io.DataInputStream;
importjava.io.DataOutputStream;
importjava.io.InputStream;
importjava.io.InputStreamReader;
importjava.io.OutputStream;
importjava.net.Socket;
 
publicclassChatClient {
    publicstaticvoidmain(String[] args) {
        try{
            //创建客户端套接字
            Socket sc=newSocket("localhost",9999);
            //获取套接字输入流
            InputStream is=sc.getInputStream();
            DataInputStream dis=newDataInputStream(is);
            //获取套接字输出流
            OutputStream os=sc.getOutputStream();
            DataOutputStream dos=newDataOutputStream(os);
             
            //创建字符输入流接受键盘输入
            InputStreamReader isr=newInputStreamReader(System.in);
            BufferedReader br=newBufferedReader(isr);
             
            //聊天
            String message;
            while(true){
                //读取键盘输入的字符,写到客户端输出流
                message=br.readLine();
                dos.writeUTF(message);
                if(message.equals("再见"))
                    break;
                //读取服务器端的数据并打印到屏幕上
                message=dis.readUTF();
                System.out.println("服务器:"+message);
            }
            dis.close();
            dos.close();
            sc.close();
 
        }catch(Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }
         
         
    }
 
}

© 著作权归作者所有

共有 人打赏支持
上一篇: ServiceStack.OrmLite
下一篇: jQuery调用WebService
postdep

postdep

粉丝 82
博文 255
码字总数 261672
作品 0
武汉
高级程序员
私信 提问
jdbc-internals-and-timeout-configuration

An application with a proper JDBC timeout can cut down the failure time. In this article we would like to talk about different kinds of timeout values and recommended timeout ap......

不道归来
08/09
0
0
weblogic集群被管节点出现socket错误

weblogic 集群出现socket错误 启动出现错误 <span ><Nov 13, 2013 12:57:10 PM CST> <Error> <Cluster> <BEA-000109> <An error occurred while sending multicast message: java.io.IOExcep......

tututu_jiang
06/15
0
0
JVM Attach实现原理剖析

前言 本文旨在从理论上分析JVM 在 Linux 环境下 Attach 操作的前因后果,以及 JVM 为此而设计并实现的解决方案,通过本文,我希望能够讲述清楚如下三个主要方面的内容。 原发布:我的博客 一...

从精于一开始
07/21
0
0
【转】JPDA:Java平台调试架构(常用的远程调试方法)

最近使用WTP的Server功能很不爽,连tomcat服务器时java类中的任何改动都要重启服务器,一怒之下就改用JPDA了,以下是一些总结。 什么是JPDA Java Platform Debugger Architecture(JPDA:Java平...

晨曦之光
2012/03/09
0
0
Eclipse远程调试Tomcat

最近,一直在研究Tomcat的工作内幕,主要的方法就是参考《How Tomcat Works》 这本书和Tomcat 5.5.26的源代码。 Tomcat的代码结构还是比较清晰的,注释也比较全。但是代码毕竟是静态的,难以...

一枚Sir
2014/08/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nuc970 uboot nand-boot,kernel, filesystem 烧录位置

一 烧写到Nand Flash **1.1 **相关文件说明 l BSP版本:nuc970bsp-release-20150519.zip l NuWriter版本:2015/04/28-V01,nuvoTon Nu-Writer V1.0 l 烧写文件: u-boot-spl.bin:负责将u-b......

CookieDemo
45分钟前
1
0
python中sort和sorted函数小结

L.sort(cmp=None, key=None, reverse=False) sorted(iterable, cmp=None, key=None, reverse=False) 这样看,sorted函数只比sort函数多一个iterable参数,其余没什么不同,iterable是一个迭代......

上官夏洛特
今天
3
0
thinkphp 常用SQL执行语句总结

第一条:Db::tablera('vr_panomas')->where(['delete_time'=>0,'id'=>['in',$pids]])->field(['id'=>'id','post_thumb'=>'thumb','post_title'=>'title','post_tags'=>'tags','post_price'=>......

koothon
今天
4
0
支付宝返回状态resultStatus意思

上一篇集成支付宝的时候,会有一些支付宝返回的resultStatus,具体意思是: 9000 订单支付成功 8000 正在处理中 4000 订单支付失败 6001 用户中途取消 6002 网络连接出错 还有memo,意思就是...

RainOrz
今天
3
0
electron webview 页面加载事件顺序

1.did-start-loading 页面开始加载 2.load-commit 主页面文档加载 3.page-title-updated title 4.dom-ready 主页面 dom 加载完成 5.load-commit frame文档加载 6.did-frame-finish-load fram......

dubox
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部