java 网络

1、工具类和对象的使用

  使用步骤:

    1. 像创建变量一样,创建工具类型的对象

      格式: 数据类型 对象名 = new 数据类型();

    2. 完成上面的步骤,通常数据类型的位置会出现红线 (需要导包)

      解决方案:鼠标悬停在红线位置,点击要导入的包即可。

    3. 接下来就可以通过工具对象的名称,来使用工具了。

      操作方式: 对象名.方法名();

2、网址详解

  网址的组成部分: 通信协议://域名:端口号/虚拟路径?参数列表#锚点

    通信协议:

      传输速率控制;

      传输编码控制;

      出错控制;

      等

    域名:

      ip地址的别名

      ip地址:是计算机在互联网中的唯一表示 (公网ip)。

    端口号:

      范围:0-65535之间

      http协议访问时,可以忽略端口号,自动寻找80,http是不安全协议

      https协议访问时,可以忽略端口号,自动寻找443,http是安全协议

    参数列表(重要):

      访问网络时,给服务器发送的参数内容.

      参数列表由多个参数组成, 参数与参数之间使用&连接

      每一个参数又由参数名称和参数内容组成, 名称与内容之间使用=号连接

    锚点:

      是网页制作中超级链接的一种,又叫命名锚记。命名锚记像一个迅速定位器一样是一种页面内的超级链接。

    https://www.baidu.com/

    http://www.4399.com/

3、URL类

  统一资源定位符(Uniform Resource Locator),网址。

  在万维网上(world wide web) 每一个信息和资源都有统一且唯一的地址 标准使用流程:

//1. 创建一个URL类的对象url 
URL url = new URL("网址"); 
  
//2. 通过URL类的对象url打开网络连接 , 并得到连接对象conn 
URLConnection conn = url.openConnection(); 

//3. 通过连接对象 , 得到用于读取网页内容的输入流is 
InputStream is = conn.getInputStream(); 

//4. 将上述的字节流is 装饰为字符流 , 将字符流再装饰为一次能读取一行的字符流br 
BufferedReader br = new BufferedReader(new InputStreamReader(is)); 

//5. 通过字符流br,读取一行内容,并将内容存储到变量text中 
String text = br.readLine(); 

//6. 可以将读取到的内容text 输出显示到控制台 
System.out.println(text);

4、乱码处理

  读取服务器数据乱码处理

    计算机存储的都是数字

      编码表:

        ASCII 65:A 66:B 67:C 97:a

      简体中文国标系列编码:

        GBK GB2312 GB18030

        UTF-8 unicode

    处理的代码如下:

      //在is装饰为字符流时,指定字符集UTF-8 B

      ufferedReader br = new BufferedReader(new InputStreamReader(is,"UTF-8"));

  参数乱码的处理

    将发送给服务器的中文进行URL编码即可

    URL编码:将中文转换为%+英文字母+阿拉伯数字(十六进制)

    String para = URLEncoder.encode("中文文字","UTF-8");

5、疫情数据的分析与读取

  新浪数据(前后端分离):https://gwpre.sina.cn/interface/fymap2020_data.json? _=1585053244653 (f12>network查看)

  网易数据(前后端分离):https://c.m.163.com/ug/api/wuhan/app/data/list-total? t=317010693490 (f12>network查看)

  百度数据(非前后端分离):嵌入在网页的源码中 (右键查看源代码 , ctrl+f查找)J

  丁香园数据(非前后端分离):嵌入在网页的源码中 (右键查看源代码 , ctrl+f查找) 我们要读取的疫情数据 在api文档中.

6.API 线索

  开课吧疫情数据

    API地址: https://zaixianke.com/yq/all

  智能机器人

    智能机器人API服务器地址:

       https://api.jisuapi.com/iqa/query

    参数列表

      appkey:秘钥,值为:62958a3a6ef3c56d

      question:与智能机器人的聊天内容 ,例如:北京天气

  短信API

    短信API服务器地址:

      https://api.jisuapi.com/sms/send

    参数列表

      appkey:秘钥,值为:62958a3a6ef3c56d

      mobile:接收验证码的手机号

      content:短信内容,必须使用提供的模板,模板中能修改的只有六位验证码,模板如下:

        恭喜你,作业已完成!验证码是:666666。如非本人操作,请忽略本短信!【开课吧新职课】

本篇博客内容来源:

  开课吧平台 Java大学生特训营 疫情地图项目实战课 课程笔记

原文地址:https://www.cnblogs.com/foodie-nils/p/13491916.html