Java第10次实验(网络)
参考资料
本次作业参考文件
正则表达式参考资料
漫画:HTTP 协议极简教程,傻瓜都能看懂!
注:主要根据实验任务书的指导完成本次实验。
第1次实验
1. 网络基础
- ipconfig、ping
- ConnectionWatcher(简单讲解)
- telnet(连接BBS与连接Web服务器的不同)
有的电脑未安装telnet,可以在控制面板-程序-添加/删除Windows功能中选择Telnet客户端进行安装。
2. 编写TCP客户端程序
任务:
- 参考SocketTest.java编写一个简单的TCP客户端Client.java。
注:Client中远程服务器IP不要填入127.0.0.1或localhost,否则可能会出现Connection Refused!
- 使用网络调试助手4.2建立一个TCP Server。然后使用Client.java连接该TCP Server(注意:服务器向客户端发送信息时,因为客户端使用
hasNextLine()
方法,所以服务器端发送的消息需带回车换行,客户端才能将消息读出)。 - 使用ConnectionWatcher查看本机所占用的端口。
注意事项:
- 客户端发送给服务器端(输出流,PrintWriter缓冲区与autoflush)
- 常见错误:网络调试助手显示
bind() failed
表示相应端口已经被其他程序占用,请结束该程序。
3. ServerSocket与TCP服务器
任务:
- 单线程
MenuServer
服务器
常见错误:Eclipse中显示Address already in use
,端口已经被占用,先关闭占用该端口的程序。
验证:在另外一台电脑上启动网络调试助手,连接你编写的服务器端。注意:IP地址能设定为127.0.0.1吗? - 多线程
MenuServer
服务器
在单线程MenuServer程序中,服务器端只能允许一个客户端连接,如何允许服务器同时连接多个客户端? - 进阶:建立基于TCP的客户端/服务端一体化程序
现在通过网络调试助手可以实现向服务器发送消息,同时从服务器接受消息。改造Client.java为其增加GUI界面,实现同时收发消息的功能。
参考资料:
EchoServer.java,ThreadedEchoServer.java (多线程服务器)
4. UDP服务器
使用UDP改造前面的MenuServer与对应的MenuClient
5. URL类
- 演示:
URLReader.java
。给定URL,可以直接读取网页。 - 参考资料:Reading Directly from a URL
更多参考资料:
Java第10次实验(网络)的更多相关文章
- Java第9次实验(网络)
参考资料 本次作业参考文件 正则表达式参考资料 注:主要根据实验任务书的指导完成本次实验. 第1次实验 1. 网络基础 ipconfig.ping telnet(连接BBS与连接Web服务器的不同) ...
- Java第10次实验(数据库)
参考资料 数据结构实验参考文件 MySql操作视频与数据库相关jar文件请参考QQ群文件. 第1次实验 1. MySQL数据库基本操作 完整演示一遍登录.打开数据库.建表.插入 常见错误:语句后未跟; ...
- Java第8次实验(IO流)
参考资料 本次作业参考文件 正则表达式参考资料 第1次实验 1. 字符流与文本文件:使用 PrintWriter(写),BufferedReader(读) 参考文件:基础代码目录Student.jav ...
- Java第09次实验(IO流)
参考资料 本次作业参考文件 正则表达式参考资料 第1次实验 0. 验证 使用FileOutputStream写字节.(二进制文件与文本文件.try...catch...finally注意事项) 使用D ...
- Java第五次实验
Java第五次实验--网络编程与安全 任务一: 一.实验要求: 两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA 结对实现 ...
- #《JAVA程序设计》 20155214 实验五 网络编程与安全
<JAVA程序设计> 20155214 实验五 网络编程与安全 实验内容 掌握Socket程序的编写: 掌握密码技术的使用: 设计安全传输系统. 实验要求 要求一 结对实现中缀表达式转后缀 ...
- 2018-2019-2 20175202实验二《Java面向对象程序设计》实验报告
2018-2019-2 20175202实验二<Java面向对象程序设计>实验报告 一.实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初 ...
- 2017-2018-2 20165327 实验二 《Java面向对象程序设计》实验报告
20165327<Java程序设计>实验二 <Java面向对象程序设计>实验报告 实验二 <Java面向对象程序设计> 一.实验报告封面 课程:Java程序设计 班 ...
- java的第二个实验——JAVA面向对象程序设计
java的第二个实验——JAVA面向对象程序设计 北京电子科技学院 实 验 报 告 课程:Java程序设计 班级:1352 姓名:林涵锦 学号:20135213 成绩: ...
随机推荐
- 最长公共子序列与最长公共字串 (dp)转载http://blog.csdn.net/u012102306/article/details/53184446
1. 问题描述 子串应该比较好理解,至于什么是子序列,这里给出一个例子:有两个母串 cnblogs belong 比如序列bo, bg, lg在母串cnblogs与belong中都出现过并且出现顺序与 ...
- POJ 2456: Aggressive cows(二分,贪心)
Aggressive cows Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 20485 Accepted: 9719 ...
- C语言--第二周作业评分和总结(5班)
作业链接:https://edu.cnblogs.com/campus/hljkj/CS2017-5/homework/1026 一.评分要求 要求1 阅读指定博客+阅读收获+例子.(5分) 要求2 ...
- next_permutation函数和per_permiutation函数
next_permutation用于求有序数组里面的下一个排序,形式为next_permutation(数组名,数组名+n)
- c# 敏捷2 ForEach ToDictionary ToLookup Except比较
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; ...
- hdu3974 Assign the task dfs序+线段树
There is a company that has N employees(numbered from 1 to N),every employee in the company has a im ...
- jsp中的include静态包含与动态包含,
d动态包含与静态包含的最大区别是 静态包含:<%@ include file = "文件名.jsp"%>,在<body>的标签外定义.在没有编译的时候,两个 ...
- java黑魔法-反射机制-02-通过Java反射调用其他类方法
package com.aaron.reflect; import java.lang.reflect.Method; import java.lang.reflect.InvocationTarge ...
- Scala之偏函数Partial Function
https://blog.csdn.net/bluishglc/article/details/50995939 从使用case语句构造匿名函数谈起在Scala里,我们可以使用case语句来创建一个匿 ...
- ADB连接手机的两种方式(usb数据线连接和wifi连接)
ADB(Android Debug Bridge)安卓测试桥,它是连接电脑开发端和安卓设备的桥梁,这个安卓设备可以是真实的安卓手机或者平板,也可以是虚拟的安卓模拟器, 这里介绍ADB连接手机的两种 ...