您的位置:首页 > 编程语言 > Java开发

201621123040《Java程序设计》第13周学习总结

2017-12-20 18:30 309 查看

1.本周学习总结



2.为你的系统增加网络功能(购物车、图书馆管理、斗地主等)-分组完成

2.1简述你想为你的系统增加什么网络功能?设计思路是什么?

创建服务器端端口(3333),当用户以客户端身份访问时就可以创建一个新的套接字对象,服务器就可以向用户发送图书馆相关信息;实现多个用户同时访问此服务器,就要用到多线程网络技术,通过
Thread
类,实现
Runnable
接口。

2.2系统通过网络传递了什么信息?信息的格式是什么?

系统通过网络传递I/O流,使用字节流将其存储,后通过
Scanner
PrintWriter
将其包装传输

2.3你的网络模块使用了TCP还是UDP技术?模块中的常用类是什么?

网络模块使用的是TCP技术,模块中常用到的类是
ServerSocket
类、
Socket
类、
Thread


2.4截图网络通讯部分的源代码与运行截图,并进行简单说明。

用户访问我们创建的3333端口的服务器端,启动线程,实现访问





3.码云与PTA

3.1统计本周完成的代码量

周次总代码量新增代码量总文件数新增文件数
第一周1891891010
第二周30430499
第三周5575571010
第四周62162188
第五周32632677
第六周9729721212
第七周33833844
第八周37937966
第九周49249255
第十周47347366
第十一周5275271010
第十二周66166177
第十三周54454488

4.网络学习指导(以下作业内容均为选做)

4.1网络基础

4.1.1比较
ping www.baidu.com
ping cec.jmu.edu.cn
,分析返回结果有何不同?为什么会有这样的不同?

访问
ping cec.jmu.edu.cn
耗时短于访问
ping www.baidu.com


ping www.baidu.com
IP地址所在地:广东省广州市;
ping cec.jmu.edu.cn
地址所在地:福建省厦门市;ping通本地教育网自然就更快些



4.1.2
telnet bbs.newsmth.net
,上面这条命令连接的是远程主机的什么端口号?

端口号:23



4.1.3
telnet cec.jmu.edu.cn 80
,尝试回答:你从屏幕看到一些什么内容?返回的内容是不是cec.jmu.edu.cn的主页内容?尝试使用
GET /index HTTP/1.0
命令,会返回什么?详见实验任务书题目1。

空空白白





4.1.3启动ConnectionWatcher, 然后启动若干个可以联网的程序(如QQ, telnet,浏览器等),查看本机上有什么程序联网,使用了什么端口?QQ占用了什么端口和那些远程IP进行交互,这些IP分布地在那里?使用了什么协议进行通信?

QQ使用的是80端口,IP:183.232.103.219 ,来自广东省深圳市

网易云音乐使用的是80端口,IP:223.252.199.10,来自浙江省杭州市

360浏览器使用的是80端口,举例IP:180.163.251.158,来自中国上海市



4.1.4编写网络程序必不可少的几个信息是什么?

IP及其端口;协议

4.2编写TCP客户端程序

4.2.1参照SocketTest.java编写一个简单的连接远程服务器小程序Client.java,可以接收并显示服务器发送的信息。启动时需要首先在控制台指定远程主机IP与端口号。(截图,出现自己学号)。



4.2.2将程序中的网址改成bbs.newsmth.net,端口号改为23,再次观察返回结果?尝试执行telnet bbs.newsmth.net 23,对比返回结果。

二者返回的内容大致相同,不同的是eclipse存在编码问题,有乱码





4.2.4启动网络调试助手,将其设置为TCP Server,并启动,尝试使用Client.java连接该TCP Server,使用该服务器向Client发送信息。(截图关键代码与运行结果)





4.3ServerSocket与TCP服务器

4.3.1简易单线程MenuServer,题目3.1-3.4。(关键代码及运行截图,包含学号)可以使用网络调试助手,将其设置为TCP Client(IP与端口填你的MenuServer的IP与端口),连接你的MenuServer。其中的文件搜索功能为选做。



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: