【Java学习笔记】TCP客户端/服务器端-阿里云开发者社区

开发者社区> 老朱教授> 正文

【Java学习笔记】TCP客户端/服务器端

简介:
+关注继续查看

客户端:

import java.net.Socket; 
import java.net.InetAddress; 
import java.net.UnknownHostException; 
import java.io.OutputStream; 
import java.io.BufferedReader; 
import java.io.InputStream; 
import java.io.InputStreamReader; 
import java.io.PrintWriter; 
import java.io.IOException; 
public class TcpClient { 
    public static void main(String[] args) throws IOException { 
        try { 
            byte a[] = { 127,0,0,1 }; 
            InetAddress address = InetAddress.getByAddress(a); 
            Socket socket = new Socket(address,9876); 
            OutputStream os = socket.getOutputStream(); 
            PrintWriter out = new PrintWriter(os,true); 
            InputStream is = socket.getInputStream(); 
            InputStreamReader isr = new InputStreamReader(is); 
            BufferedReader in = new BufferedReader(isr); 
            String line; 
            line = "A line sent by the client"; 
            out.println(line); 
            line = in.readLine(); 
            System.out.println("client got: " + line); 
            out.close(); 
            in.close(); 
            socket.close(); 
        } catch (UnknownHostException e) { 
            System.out.println(e); 
        } catch (IOException e) { 
            System.out.println(e); 
        } 
    } 
}

服务器端:

import java.net.ServerSocket; 
import java.net.Socket; 
import java.io.BufferedReader; 
import java.io.InputStream; 
import java.io.InputStreamReader; 
import java.io.IOException; 
import java.io.OutputStream; 
import java.io.PrintWriter; 
public class TcpServer { 
    public static void main(String[] args) { 
        try { 
            ServerSocket serverSocket = new ServerSocket(9876); 
            Socket socket = serverSocket.accept(); 
/*和Client一样了*/ 
            InputStream is = socket.getInputStream(); 
            InputStreamReader isr = new InputStreamReader(is); 
            BufferedReader in = new BufferedReader(isr); 
            OutputStream os = socket.getOutputStream(); 
            PrintWriter out = new PrintWriter(os,true); 
            String line; 
            while((line = in.readLine()) != null) { 
                 System.out.println("server got: " + line); 
                 line = "A line sent by the server"; 
                 out.println(line); 
            } 
            out.close(); 
            in.close(); 
            socket.close(); 
            serverSocket.close(); 
        } catch (IOException e) { 
            System.out.println(e); 
            System.exit(1); 
        } 
    } 
}

 




本文转自gnuhpc博客园博客,原文链接:http://www.cnblogs.com/gnuhpc/archive/2012/12/17/2822297.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
跟着动画学习 TCP 三次握手和四次挥手
TCP三次握手和四次挥手的问题在面试中是最为常见的考点之一。很多读者都知道三次和四次,但是如果问深入一点,他们往往都无法作出准确回答。期望读者们可以更加简单地地理解TCP交互的本质。
1806 0
CCTV5手机客户端新媒体:让赛事集锦堪比电影大片
“新媒体”的核心载体,是高度数字化并可以通向智能化的商业基础设施。央视坚持自主创新、坚持移动优先是主流媒体融合发展的正确方向。创建CCTV5移动客户端,结合AI提升用户粘性,利用平台统筹管理新媒体广告并在未来做到精准营销,是央视新媒体发展实现换道超车、推进媒体融合走向纵深的关键布局,也是推动传统媒体行业与新技术、新媒体深度融合的全方位变革。
4898 0
DNS服务配置|学习笔记
快速学习DNS服务配置
30 0
《基于ECS搭建FTP服务》学习笔记
1.远程连接ECS服务器 2.安装vsftpd 3.配置vsftpd 4.客户端测试
466 0
服务端编程示例|学习笔记
快速学习服务端编程示例
39 0
ECS云服务器学习笔记(五)
搭建个人Leannote云笔记本
439 0
【在家实践】准服务端开发ECS学习使用体验记录
笔者是机械研三的学生,自己在研究生期间自学后,在秋招拿到服务端开发的职位,确定工作之后想在就职前先预习下各种技术(没错我就是卷王,我只想卷死各位,或者被各位卷死(狗头))。其实在之前自学的时候已经接触过Linux系统,不过一直是在虚拟机里使用,而因为我从事的是游戏开发,又想用untiy做些客户端的工作开发,这就导致同时开虚拟机和unity时我的小笔电有些吃不消。所以准备把服务端的运行放在云上。几番比较以后,了解到阿里云的技术以及服务比相同产品优势大,所以果断先试用了一个月,最近放假在家一个月到期,但想继续学习使用,发现了【在家实践】这个学生(白嫖)活动,赶紧参与一手!!
12 0
+关注
3546
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载