• Java通过Internet进行通信


    包:java.net

    支持通过超文本传输协议(HTTP)和文件传输协议(FTP)进行连接和检索文件以及在底层处理基本的UNIX式套接字。

    要同网络上的系统进行通信,可以采用3中简单的方式:

    1、在小程序中使用统一资源定位符(URL)加载网页和其他资源;

    2、使用套接字类Socket和ServerSocket,它们建立到主机的标准套接字连接,并通过这种连接执行读写;

    3、调用getInputStream(),该方法建立到URL的连接,并通过该连接来获取数据。

    一、打开跨越网络的流

    要加载网上的文本文档并逐行读取其中的内容,可以通过4步来实现:

    1、创建一个表示资源的网络地址的URL对象;

    2、创建一个HttpURLConnection对象,它能够加载URL并连接到相应的站点;

    3、使用HttpURLConnection对象的getContent()方法来创建一个InputStreamReader,用于读取来自URL的数据流;

    4、使用输入流阅读器来创建一个BufferedReader对象,后者能够高效的从输入流中读取字符。

     二、套接字

    1、创建一个Socket实例:

    Socket connection = new Socket(hostName, portNumber);

    创建套接字后,应设置其超时值,这个值决定了应用程序将为数据的到来等待多长时间。

    connection.setSoTimeOut(50000);

    建立套接字后,可以使用输入/输出流来读写它:

    DataInputStream in = new DataInputStream(new BufferedInputStream(connection.getInputStream()));

    connection.getInputStream()返回一个与套接字相关联的输入流;然后使用该输入流创建了BufferedInputStream,而后者被用来创建一个DataInputStream。

    用完套接字以后,需要调用close()方法来关闭。这也将关闭为套接字建立的所有输入输出流。

    2、Socket服务器

     服务器端套接字的工作原理与客户端套接字类似,只是它还包含accept()方法。

    服务器套接字监听TCP端口上的客户连接;当客户连接到该端口时,accept()方法将接收该连接。

     创建服务器套接字:

    ServerSocket servo = new ServerSocket(8888);参数是端口号

     servo.accept();

  • 相关阅读:
    自定义的类型放入STL的set中,需要重载自定义类中的“<”符号(转)
    C++中的explicit关键字(转)
    【小米3使用经验】小米3关闭系统自动更新(升级)
    享元模式FlyweightPattern(转)
    程序员的工作环境与效率
    Windows7远程登陆访问2003很卡的解决办法
    windows7上可以正常安装的VS2010版本
    使用Visual Studio指定命令行参数
    winform配置文件的简单使用
    Java nio epoll mina
  • 原文地址:https://www.cnblogs.com/ty10114g/p/3105039.html
Copyright © 2020-2023  润新知