标签(空格分隔): javahtml
Answer:
基本框架:
java
ping www.baidu.com
与ping cec.jmu.edu.cn
,分析返回结果有何不一样?为何会有这样的不一样?Answer:
结果分别以下:
分析:
1.回复的地址不一样:
2.回复时间不一样:
在集美离厦门市的服务器的距离近,因此回复的时间比较快。百度的服务器在广州,因此回复时间比较慢。web
3.www.a.shifen.com和jmuweb2.jmu.edu.cn
打开地址结果分别以下:
为何打不开百度?
这涉及cname解析和DNS解析的内容。
给个问题回答连接:十分系统(www.a.shifen.com)是干什么的?和百度有什么关系?
根本不是咱们学院的主页,这是为何?
cec.jmu.edu.cn和jmuweb2.jmu.edu.cn使用的同一台主机210.34.128.152。编程
telnet bbs.newsmth.net
,上面这条命令链接的是远程主机的什么端口号?Answer:
这个是常识。telnet的端口号就是23。
若是不知道的话,能够尝试在命令提示符窗口用netstat命令查询。小程序
telnet cec.jmu.edu.cn 80
,尝试回答:你从屏幕看到的是一些什么内容?返回的内容是否是cec.jmu.edu.cn的主页内容?尝试使用GET /index HTTP/1.0命令,会返回什么?见实验任务书题目1Answer:
1.telnet cec.jmu.edu.cn 80 后无任何返回结果;
2.GET /index HTTP/1.0命令,获得结果以下:
浏览器
ConnectionWatcher
, 而后启动若干个能够联网的程序(如QQ, telnet,浏览器等),查看本机上有什么程序联网,使用了什么端口?QQ占用了什么端口和那些远程IP进行交互,这些IP分布地在那里?使用了什么协议进行通讯?Answer:
部分截图以下:
1.其实不管是QQ仍是其余的一些软件,都用443(https)、80(http)端口与远程IP交互。
2.QQIP分布在哪里,查询以下:
3.使用了TCP协议服务器
参考:实验任务书-题目1
Socket;域名;输入与输出流;TCP和UDP协议;网络
Answer:
多线程
要控制台输入,好吧,在下面:
并发
Answer:
显示内容实际上是同样的,以下:
***
Answer:
没有任何返回结果。
改进后:
//没有发送Get得到网站文档,因此改进代码以下: pw.println("GET / HTTP/1.0"); pw.println("");
尝试使用Client.java
链接该TCP Server,并发送信息。
回答:如今的Client.java
只能发送信息或者接收信息,可否改造Client.java
使其能够与服务器进行交互(服务器能够发送信息给Client,Client
也可发送信息给服务器),写出大概思路便可。
Answer:
如题目一同样。
Answer:
参考:实验任务书-题目3
参考:EchoServer.java,ThreadedEchoServer.java (多线程服务器)
文件搜索
功能为选作?Answer:
主界面:
查询时间:
查询IP:
退出:
(参考:UDPServer.java
)
Answer:
主界面和操做1:
操做2:
操做4(退出):
Answer:
编写网络程序涉及到了输入流和输出流。QQ、聊天室、网络游戏收发数据选择字符流,达到服务器与客户端的通讯。
阅读ServerAndThread目录中的源代码
Answer:
功能:实现客户端与服务端之间的通讯。
Answer:
ClientChart | ClientListener | ClientReadThread |
---|---|---|
设置客户端界面 | 客户端的监听器 | 客户端读取线程 |
ServerChart | ServerReadThread | SeverActionListener |
设置服务端界面 | 服务端读取线程 | 服务端的监听器 |
Answer:
如图客户端没法辨别哪一个是本身仍是服务器发送的信息。而服务端的输出格式不美观。
在码云的项目中,依次选择“统计-Commits历史-设置时间段”, 而后搜索并截图
Answer:
Trail: Custom Networking
主要看Overview of Networking,Working With URLs,All About Sockets,All About Datagrams
Answer:
Overview of Networking:
网络的概述有两个部分。第一部分描述java平台的网络功能,介绍了applet和从url加载图片的内容。第二部分介绍网络基础知识,了解TCP与UDP的不一样(TCP:是一个面向链接的协议,它提供了一个可靠的两台计算机之间的数据流;UDP:是一种协议,独立数据包发送的数据,称为数据报,从一台计算机到另外一个没有担保的到来),了解了端口。
在互联网上互相交流使用传输控制协议(TCP)和用户数据报协议(UDP)的关系图以下:
Working With URLs:
基本概念:可使用URL来访问互联网上的信息,一个URL(统一资源定位器)是资源在互联网上的地址。
文章思路:网址是什么——>建立URL——>解析URL——>用BufferedReader直接从URL读取——>链接URL——>读入和写入URLConnection
All About Sockets:
介绍了套结字。套接字,是支持TCP/IP的网络通讯的基本操做单元,能够看作是不一样主机之间的进程进行双向通讯的端点,简单的说就是通讯的两方的一种约定,用套接字中的相关函数来完成通讯过程。
读取和写入套接字的源码:
String hostName = args[0]; int portNumber = Integer.parseInt(args[1]); try ( Socket echoSocket = new Socket(hostName, portNumber); PrintWriter out = new PrintWriter(echoSocket.getOutputStream(), true); BufferedReader in = new BufferedReader( new InputStreamReader(echoSocket.getInputStream())); BufferedReader stdIn = new BufferedReader( new InputStreamReader(System.in)) )
后面还有编写一个客户端/服务器的介绍。
All About Datagrams:
数据包简介:一个自我完备的独立资料实体,携带着足够的资讯,它可以从源头,选取路径,最终到达目的电脑,而不用依赖起始电脑、目的电脑以及传输网络预先交换的资讯。
后面还讲解了如何写一个数据的客户端和服务器,最后讲怎么广播到各个接受者。
Answer:
廖雪峰网站上的只是http协议的简介,想深刻了解能够阅读《HTTP权威指南》。若是以为权威指南生涩,能够看我以前看过的是图解HTTP,加上火狐的几个插件,去操做而后分析就行了。
固然用Google浏览器直接按F12启动开发者工具去学习也不错。
Java编程技巧:小爬虫程序.docx
Answer:
做者的思路:
1. 把全部想要的商品的连接读到程序中。
2. 分别打开每个连接读取源代码
3. 验证是不是金子商品(源代码中含有free_msg字符串)
4. 若是是金子就把该连接用IE打开
代码主体就是URL类实现得到连接和连接上的输出流,Digger类实现判断是否为金子,而后打开连接。
使用java中的Socket、URL、URLConnection,而后遵循HTTP协议也能够编写一个小程序,和能够查询成绩的HTTP服务器进行交流。然而直接使用Socket编程较麻烦,这时候咱们可使用HTTPComponent。
HTTPComponent相比传统JDK自带的URLConnection,增长了易用性和灵活性
Answer:
工欲善其事,必先利其器。先留下个学习网站:HttpClient 教程