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

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

难度初级
时长 2小时 0分
学习人数
综合评分9.77
496人评价 查看评价
9.9 内容实用
9.8 简洁易懂
9.6 逻辑清晰
  • D_r
    InetAddress类没有构造方法,所以不能直接new出一个对象; 可以通过InetAddress类的静态方法获得InetAddress的对象; InetAddress.getLocalHost(); InetAddress.getByName(""); 类主要方法: String - address.getHostName(); String - address.getHostAddress(); public static InetAddress getByName(String host) throws UnknownHostException 在给定主机名的情况下确定主机的 IP 地址。 主机名可以是机器名(如 "java.sun.com"),也可以是其 IP 地址的文本表示形式。
    查看全部
  • 两台计算机要通过网络进行通信,必须具备: 1、唯一的标识(IP地址); 2、需要共同的语言(协议); 3、辨别不同应用程序(端口号). Tcp传输控制协议 ip互联网协议 网络模型 物理层 网线 网卡 数据链路层 网络 传输层 TCP IP 应用层 用户直接接触的 http(看新闻 电子商务)超文本传输协议 ftp文件(上传 下载)传输协议 smtp(文件发送) IP地址就像是手机号码,每台电脑的ip唯一 ipv4 32位2进制 192.168.0.1; 端口号 区分不同应用 端口范围0-65535 其中0-1023为系统所保存 ip 端口 组成了Scoket 运行的程序之间双向通讯链路的终结点 http 80 ftp 21 telnet 13 各种协议端口号 1、InetAddress:用于标识网络上的硬件资源。(IP地址) 2、URL:统一资源定位符---通过URL可以直接读取或写入网络上得数据。 3、Sockets:使用TCP协议实现网络通信的Socket相关的类。 4、Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信。
    查看全部
    0 采集 收起 来源:网络基础简介

    2015-08-05

  • //循环监听等待客户端的连接 while(true){ //调用accept()方法开始监听,等待客户端的连接 socket=serverSocket.accept(); //创建一个新的线程 ServerThread serverThread=new ServerThread(socket); //启动线程 serverThread.start(); count++;//统计客户端的数量 System.out.println("客户端的数量:"+count); InetAddress address=socket.getInetAddress(); System.out.println("当前客户端的IP:"+address.getHostAddress()); }
    查看全部
  • 步骤: (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()刷新缓存
    查看全部
  • public class Client { public static void main(String[] args) { try { //1.创建客户端Socket,指定服务器端口号 Socket socket=new Socket("localhost", 8886); //2.获取输出流,向服务器端发送消息 OutputStream os=socket.getOutputStream();//创建字节输出流 PrintWriter pw=new PrintWriter(os);//包装成打印流 System.out.println("连接到服务器"); pw.write("用户名:admin;密码123"); pw.flush(); socket.shutdownOutput(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
    查看全部
  • Ctrl+shif+o:提示需要导入的包。 //1.创建一个serverSocket ServerSocket serverSocket = new ServerSocket(8888); //2.调accept()方法开始监听,等待客户端连接 System.out.println("***服务器已经启动,等待连接"); Socket socket = serverSocket.accept(); //3.获取输入流,用来赢取客户端发送的信息 InputStreamReader ir = new InputStreamReader(socket.getInputStream()); BufferedReader br = new BufferedReader(ir); String data = br.readLine(); while(data!=null){ System.out.println("我是客户端给你发送数据:" + data); data = br.readLine(); } socket.shutdownInput(); //关闭输入流。 br.close(); ir.close(); socket.close(); serverSocket.close();
    查看全部
  • 如果未指定端口号,则使用默认的端口号,此时getPort()方法返回值为-1;
    查看全部
  • Socket编程 一、网络基础知识 两台计算机要通过网络进行通信,必须具备: 1、唯一的标识(IP地址); 2、需要共同的语言(协议); 3、辨别不同应用程序(端口号). 1、IP地址: 每台计算机的唯一标识,用来区分网络中的不同主机,是两台主机进行网络通信必不可少的。IPv4 2、协议: a、TCP/IP协议:目前世界上应用最为广泛的协议。是以TCP和IP为基础的不同层次上多个协议的集合。 也称为:TCP/IP协议族 或者 TCP/IP协议栈。 b、TCP: Transmission Control Protocol 传输控制协议 c、IP :Internet Protocol 互联网协议 d、TCP/IP模型(网络分层): 1)、物理层;网线... 2)、数据链路层 3)、网络层 4)、传输层:TCP/IP协议 5)、应用层:HTTP超文本传输协议、FTP文件传输协议、SMTP简单邮件传送协议、Telnet远程登录服务。 3、端口号: a、用于区分不同的应用程序; b、端口号范围为0-65535,其中0-1023为系统所保留; c、IP地址和端口号组成了所谓的Socket,Socket是网络上运行的程序之间双向通信链路的终结点,是TCP和UDP的基础。 d、常用端口号-- http: 80; ftp; 21; telnet; 23。 ---------------------------------------------------------------------------------------------------- JAVA中得网络支持 针对网络通信的不同层次,Java提供的网络功能有四大类: 1、InetAddress:用于标识网络上的硬件资源。(IP地址) 2、URL:统一资源定位符---通过URL可以直接读取或写入网络上得数据。 3、Sockets:使用TCP协议实现网络通信的Socket相关的类。 4、Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信。
    查看全部
    0 采集 收起 来源:网络基础简介

    2015-08-04

  • 1.创建ServerSocket和Socket ServerSocket ss=new ServerSocket(int Port) 2.打开连接到Socket的输入/输出流TCP是面向链接的,可靠的,有序的,以字节流的方式发送数据 简建立服务端Server Socket,绑定指定的端口,然后在指定的端口监听。
    查看全部
    0 采集 收起 来源:Socket 简介

    2015-08-04

  • URL类 url构成:协议名:资源名称 hhtp://www.baidu.com 1.创建一个URL实例 URL imooc=new URL("http://www.imooc.com"); 根据已存在的url创建另一个url URL url=new URL(imooc, "/index.html?username=tom#test");//?后面表示参数,#后面表示锚点 url.getProtocal() ; url.getHost() ; url.getPort();//如果未指定端口号,则使用默认的端口号,使用getPort()时返回-1 url.getPath()//文件路径 url.getFile()//文件名 url.getRef();//相对路径 锚点,#后面内容 url.getQuery()//查询字符串 参数 try { URL url= new URL("http://www.baidu.com"); //通过url openstream 来获取url对象的资源字节流 InputStream is= url.openStream(); // 字节流转为字符输出流 InputStreamReader isr = new InputStreamReader(is,"utf8"); //字符输入流添加缓冲 BufferedReader br=new BufferedReader(isr); String data= br.readLine(); while(data!=null){ System.out.println(data); data =br.readLine(); } br.close(); isr.close(); is.close(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }
    查看全部
  • InetAddress类没有构造方法,所以不能直接new出一个对象; 可以通过InetAddress类的静态方法获得InetAddress的对象; InetAddress.getLocalHost(); InetAddress.getByName(""); 类主要方法: String - address.getHostName(); String - address.getHostAddress(); public static InetAddress getByName(String host) throws UnknownHostException 在给定主机名的情况下确定主机的 IP 地址。 主机名可以是机器名(如 "java.sun.com"),也可以是其 IP 地址的文本表示形式。
    查看全部
  • 两台计算机要通过网络进行通信,必须具备: 1、唯一的标识(IP地址); 2、需要共同的语言(协议); 3、辨别不同应用程序(端口号). Tcp传输控制协议 ip互联网协议 网络模型 物理层 网线 网卡 数据链路层 网络 传输层 TCP IP 应用层 用户直接接触的 http(看新闻 电子商务)超文本传输协议 ftp文件(上传 下载)传输协议 smtp(文件发送) IP地址就像是手机号码,每台电脑的ip唯一 ipv4 32位2进制 192.168.0.1; 端口号 区分不同应用 端口范围0-65535 其中0-1023为系统所保存 ip 端口 组成了Scoket 运行的程序之间双向通讯链路的终结点 http 80 ftp 21 telnet 13 各种协议端口号 1、InetAddress:用于标识网络上的硬件资源。(IP地址) 2、URL:统一资源定位符---通过URL可以直接读取或写入网络上得数据。 3、Sockets:使用TCP协议实现网络通信的Socket相关的类。 4、Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信。
    查看全部
    0 采集 收起 来源:网络基础简介

    2015-08-04

  • socket编程传递文件
    查看全部
    0 采集 收起 来源:Socket 总结

    2015-08-04

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

    2015-08-04

  • 是否关闭输出流和输入流
    查看全部
    0 采集 收起 来源:Socket 总结

    2015-08-04

举报

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

微信扫码,参与3人拼团

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

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