学号:201621123032 《Java程序设计》第13周学习总结

1:本周学习总结

1121188-20171216100118480-232178683.png

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

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

创建了一个服务器监听8080端口,通过网络助手客户端进行访问,就创建一个Socket对象,客户端进行功能选择,服务器通过客户端的选择返回相应的服务。运用多线程技术,可以使多个客户端同时进行访问。

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

传递了I/O流,使用getInputStream,.getOutputStream来获取或者输入字节流,用Scanner,PrintWriter包装起来进行传输

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

使用TCP技术。
模块中常用的类是ServerSocket类,Socket类,Thread类。

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

1121188-20171220001417834-178103979.png
初始化图书馆,创建服务器监听8080端口。一有客户进行访问就启动一个线程。

1121188-20171220001702615-2038279191.png
1121188-20171220001713365-1965558989.png
客户端发送请求,服务器就返回相应的方法,启动线程任务,Thread类的run方法。

运行视频:
1121188-20171220003310521-1230426986.gif

注意:如果不会编写客户端,可以使用telnet或者**网络调试助手*做客户端。

3:码云与PTA

3.1: 统计本周完成的代码量

需要将每周的代码统计情况融合到一张表中。
1121188-20171216101312558-1880169125.png

周次总代码量新增加代码量总文件夹新增加文件夹
11141141111
2520406166
31089569226
51425336297
61819394312
7298711685423
8543724507925
95695258845
10668098510218
1169352551119
12740146612312
138899149814118
1493824831465

1121188-20171216101737840-60609865.png

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

4.1: 网络基础

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

1121188-20171215232257418-777032223.png
不同:访问ping cec.jmu.edu.cn比访问ping www.baidu.com耗时短。因为ping www.baidu.comIP地址所在地是广东省广州市;ping cec.jmu.edu.cn地址所在地是福建省厦门市;ping通本地教育网自更快些。

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

23号端口
1121188-20171215233814730-24248291.png

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

看不到任何内容
1121188-20171215233939199-1093222193.png
尝试使用GET /index HTTP/1.0命令:
1121188-20171215234110402-581368364.png

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

1121188-20171215234426058-997308983.png

QQ使用的是80端口,IP:183.232.103.219 ,广东省深圳市
360浏览器使用的是80端口,IP:180.163.251.158,中国上海市

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

IP及其端口;协议

4.2:编写TCP客户端程序

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

1121188-20171215234609168-928902434.png

1121188-20171215234617230-523788939.png

1121188-20171215234626261-1428937685.png

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

1121188-20171215234725043-1981644360.png
二者返回的内容大致相同,但是因为eclipse存在编码问题,所以有乱码

4.3:ServerSocket与TCP服务器

2:多线程MenuServer(截取关键代码证明你这个是多线程服务器,请使用多个telnet连接测试)。

1121188-20171215235949871-1540027337.png

1121188-20171215235957480-1396304525.png

1121188-20171216000003871-938368880.png

转载于:https://www.cnblogs.com/862139498wcy/p/8042764.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值