为了账号安全,请及时绑定邮箱和手机立即绑定

Java Socket应用---通信是这样练成的

难度初级
时长 2小时 0分
学习人数
综合评分9.77
496人评价 查看评价
9.9 内容实用
9.8 简洁易懂
9.6 逻辑清晰
  • Socket通信实现步骤 套接字是两台机器间通信的端点
    查看全部
    0 采集 收起 来源:Socket 简介

    2015-06-03

  • TCP是面向链接的,可靠的,有序的,以字节流的方式发送数据 简建立服务端Server Socket,绑定指定的端口,然后在指定的端口侦听
    查看全部
    0 采集 收起 来源:Socket 简介

    2015-06-03

  • InetAddress:表示网络上的硬件资源,像IP地址之类的
    查看全部
    0 采集 收起 来源:网络基础简介

    2015-06-02

  • IP标识计算机 协议:通信语言 端口号:区分不同应用程序的通信 TCP/IP协议族: 是以TCP和IP为基础的不同层次上多个协议的集合 应用层:的协议 HTTP,浏览网页之类 的 FTP:文件传输协议,文件的上传下载,共享 SMTP:箭筒邮件传输协议 Telnet:远程登录服务 端口:用来区分不同的应用程序 0 ~ 65535,其中0~1023为系统锁保留 IP地址和端口号组成了所谓的Socket,Socket是网络上运行的程序之间双向通信链路的终结点,是TCP和UDP的基础 http:80 ftp:21 telnet:23
    查看全部
    0 采集 收起 来源:网络基础简介

    2015-06-02

  • 使用TCP通信传输对象
    查看全部
    0 采集 收起 来源:Socket 总结

    2015-06-02

  • 客户端: package feifei.com; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.DatagramSocketImplFactory; import java.net.InetAddress; import java.net.SocketException; import java.net.UnknownHostException; /* * 客户端,基于UDP实现 */ public class UdpClient { public static void main(String[] args) throws IOException { /* * 向服务器发送数据 */ //指定服务器的地址,端口号,数据 InetAddress ia=InetAddress.getByName("localhost"); int port=8880; byte[] data="用户名:feifei,密码:123".getBytes();//将其转换为字节数组 //创建数据报,包含发送的数据信息 DatagramPacket dp=new DatagramPacket(data,data.length,ia,port); //创建实现数据的发送 DatagramSocket ds=new DatagramSocket(); //向服务器发送数据 ds.send(dp); /* * 接受服务器响应的数据 */ //创建数据报 byte [] data2=new byte[1024]; DatagramPacket dp1=new DatagramPacket(data2, data2.length); //接收响应的数据 ds.receive(dp1); //读取服务器端响应的数据信息 String s=new String(data2,0,dp1.getLength()); System.out.println("我是客户端,服务器端说:"+s); //关闭 ds.close(); } }
    查看全部
  • 服务器端: package feifei.com; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.net.SocketException; /** * 服务器端类,基于UDP */ public class UdpServer { public static void main(String[] args) throws IOException { /* 服务器端接受了客户端的信息 */ //先创建DatagramSocket,指定端口号 DatagramSocket ds=new DatagramSocket(8880); System.out.println("服务器端已经启动,等待客户端发送数据"); //创建字节数组,存放接收数据报的大小 byte [] data=new byte[1024]; //创建DatagramPacket数据包,用于接受客户端发送的数据 DatagramPacket dp=new DatagramPacket(data, data.length); //接收客户端发送的数据 ds.receive(dp); //读取客户端的信息 String info=new String(data,0,dp.getLength()); System.out.println("我是服务器端,客户端说:"+info); //向客户端响应信息 //定义客户端的地址,端口号,数据 InetAddress adress=dp.getAddress(); int port=dp.getPort(); byte[] byte1="欢迎您".getBytes(); //创建数据报,包含响应的数据信息 DatagramPacket dp1=new DatagramPacket(byte1, byte1.length,adress,port); //响应客户端 ds.send(dp1); //关闭 ds.close(); } }
    查看全部
  • 代码参考。
    查看全部
  • 客户端实现步骤
    查看全部
  • 服务器实现步骤
    查看全部
  • UDP 编程: 特点:udp协议是无连接,无状态,无序的、不可靠的。 优点:速度快。 原理:将需要发送的信息封装在数据报(Datagram),在数据报里指明Socket主机和端口号。然后发送出去。 使用的操作类: DatagramPacket 表示数据报包 DataSocket 用来发送和接收数据报包的套接字。
    查看全部
    0 采集 收起 来源: DatagramPacket

    2015-06-02

  • socket模型
    查看全部
  • 步骤: (1)创建ServerSocket和Socket (2)打开连接到Socket的输入/输出操作 (3)按照协议对Socket进行读/写操作 (4)关闭输入输出流,关闭Socket 服务器端: (1)创建ServerSocket对象,绑定监听器 (2)通过accept()方法监听客户端请求 (3)连接建立以后通过读取客户端发送请求消息 (4)通过输出流向客户端发送响应信息 (5)关闭资源 客户端: (1)创建Socket对象,指明需要连接的服务器地址和端口号(1023以后的端口) (2)连接建立后,通过输出流向服务器端请求 (3)通过输入流获取服务器响应信息 (4)关闭资源 常用I/O操作 InputStream is = socket.getInputStream();//字节输入流 InputStreamReader isr = new InputStreamReader(is)//将字节输入流转换为字符输入流 BufferedReader br = new BufferedReader(isr);//为输入流添加缓冲 br.readLine()按行读取 flush()刷新缓存
    查看全部
  • 多线程服务器
    查看全部
  • socket: 1、多线程的优先级(死循环中注意设置优先级问题。)优先级默认为5,可以适当降低优先级,以提高运行效率。 2、对于同一个socket,如果关闭了输出流,则与该输出流相关联的socket也会被关闭,所以一般不用关闭流,直接关闭socket即可。 3、使用tcp通信传输 对象 更符合面向对象编程的思想。 4、通过socket编程传输文件的功能模块是:通过io流读取文件字符流进行传输。
    查看全部
    0 采集 收起 来源:Socket 总结

    2015-06-01

举报

0/150
提交
取消
课程须知
本课程是 Java 开发课程的高级课程,需要对 Java 中的面向对象、IO、多线程,以及网络相关知识有一定的基础
老师告诉你能学到什么?
1、网络相关的基础知识 2、Java 中网络相关 API 的应用 3、实现基于 TCP 的 Socket 编程 4、实现基于 UDP 的 Socket 编程

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!