《2022年网络程序设计实验报告 .pdf》由会员分享,可在线阅读,更多相关《2022年网络程序设计实验报告 .pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、广 州 大 学实验报告学院工商管理学院专业、班级电子商务姓名、学号课程名称Java语言程序设计项目名称网络程序设计实验时间: 2013 年5 月10 日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - 网络程序设计实验报告开课实验室:文俊东 606 2 0 1 3 年5 月1 0 日学院工商管理学院年级、专业、班姓名成绩课程名称Java语言程序设计实验项目名称网络程序设计指导教师签名一、实验目的(1) 掌握 Java.IO 包的用
2、法;(2) 掌握 Java.Net 包的用法;(3) 掌握一个完整应用程序的设计、实施及调试的方法二、实验原理 (算法分析(包括流程图)) 本实验的内容为: 请写一个基于 Socket 的聊天程序,两人可以加入一个组进行聊天。程序可以是基于Terminal I/O).操作流程:服务器端 : 服务器启动后处于等待状态 收到客户端信息后,显信息-若信息为 bye, 则退出本次会话 再次进入待状态,此时等待用户从标准输入设备输入信息 得取用户输入后,将信息发往客户端 返回客户端;首先等待用户从标准输入设备读入一行文字; 然后发往服务器; 进入等待状态 收到服务器的回复后 -若为bye ,退出本次会话
3、再转名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - 服务端流程图:否是是否启动服务器输入数据是否为退出会话返回到启动服务器等待状态结束开始是否输入信息?发送到客户端名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - 客户端流程图:启动客户端返回到启动服务器等待状态退出
4、会话开始发送到服务器等待用户从标准输入输出设备读入一行文字是否输入 bye? 是否名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 9 页 - - - - - - - - - 三、实验过程原始记录(数据、图表、计算等)程序启动:服务端:客户端运行后的服务端情况:客户端:服务端结果:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 9 页 - - - -
5、- - - - - 客户端结果:四、实验结果及分析本次实验的难度不大再加上老师的提示,所以能够基本符合要求的完成,但是在自己实现的源代码中还有两个问题未能解决。1. 在客户端输入完信息后程序能够自动转到服务端界面,但是在服务端界面输入信息后需要人手转到客户端界面。客户端和服务端的代码基本无异但是我弄不明白为什么会出现这种情况。2. 在客户端退出对话的时候会马上弹出错误提醒,但是在服务端并没有出现这种情况。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 9 页 - - -
6、- - - - - - 五、附录 (自己实现的源代码 ) 服务端:import java.io.*; import .*; public class CZJServer /* * param args * throws IOException */ public static void main(String args) throws IOException ServerSocket hh = new ServerSocket(8610); Socket hea=hh.accept(); BufferedReader in = new BufferedReader(new InputStrea
7、mReader (hea.getInputStream(); BufferedWriter out = new BufferedWriter(new OutputStreamWriter (hea.getOutputStream(); BufferedReader inkey = new BufferedReader(new InputStreamReader (System.in); System.out.println(陈梓君 Server Connected OK); System.out.println(欢迎进入 hyukhea聊天室); for(;) String ww ; Stri
8、ng str ; out.write(Hyukjae:); str = in.readLine(); System.out.println(str); ww = inkey.readLine(); if(ww.equals(bye) out.write(ww); out.newLine(); out.flush(); break; out.write(ww); out.newLine(); out.flush(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 9 页
9、- - - - - - - - - System.out.println(Hyukjae:); System.out.println(ww); System.out.println(退出对话! ); hh.close(); 客户端:import java.io.*; import .*; public class CZJClient /* * param args */ public static void main(String args) throws IOException Socket DH = new Socket(localhost,8610); BufferedReader in
10、 = new BufferedReader(new InputStreamReader (DH.getInputStream(); BufferedWriter out = new BufferedWriter(new OutputStreamWriter (DH.getOutputStream(); BufferedReader inkey = new BufferedReader(new InputStreamReader (System.in); System.out.println(陈梓君 client Connected OK); System.out.println(欢迎进入 hy
11、ukhea聊天室 ); System.out.println(请输入你想说的话: ); for(;) String ww ; String str ; out.write(Donghea:);/ 客户端名为 Donghea ww = inkey.readLine(); System.out.println(Donghea:); System.out.println(ww); if(ww.equals(bye) out.write(ww); out.newLine(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理
12、 - - - - - - - 第 8 页,共 9 页 - - - - - - - - - out.flush(); break; out.write(ww); out.newLine(); out.flush(); str = in.readLine(); System.out.println(str); System.out.println(退出对话! ); DH.close(); 六、联系方式( e-mail)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 9 页 - - - - - - - - -