《Java程序设计》第三次作业:网络编程
2015-06-29 22:58
489 查看
作业的目标
目标1:Socket简单应用。 把教材P238-230中例11-5代码输入到我们的代码编辑器,调试并运行(80分)。
目标2:博文统计程序。 对“liem烧心”同学的博文(网址链接,网页源代码链接)进行统计,得到 博文总数、每篇博文(标题、网址、撰写时间、阅读数、评论数),输出到文本文件,或者是数据库中(需要思考我们的数据表Table,应该包括哪些字段)(90分)。
实现方式
对于目标1,我们认真阅读,花一定的时间(约1-2小时),应该每个同学都可以完成。细心+耐心。
对于目标2,思路是什么呢?
(1)教材P231例11-3中,告诉了我们怎样输出网页源代码到控制台,不妨先尝试一下。
(2)作业中,我们需要哪些信息呢?这些信息在什么地方可以获得呢?
目标1:Socket简单应用。
教材P238-230中例11-5
程序一:
程序二:
运行结果:
刚开始自己并没有能够在DOS下运行出来,想了好久,也尝试了许多,后来通过查找错误信息提示,发现是因为程序在在JAVA包里面的缘故,把程序从package里面移除出来重新编译运行就OK了,功夫不负有心人,下面是运行结果图:
****目标二尚未成功,有待添加******
目标1:Socket简单应用。 把教材P238-230中例11-5代码输入到我们的代码编辑器,调试并运行(80分)。
目标2:博文统计程序。 对“liem烧心”同学的博文(网址链接,网页源代码链接)进行统计,得到 博文总数、每篇博文(标题、网址、撰写时间、阅读数、评论数),输出到文本文件,或者是数据库中(需要思考我们的数据表Table,应该包括哪些字段)(90分)。
实现方式
对于目标1,我们认真阅读,花一定的时间(约1-2小时),应该每个同学都可以完成。细心+耐心。
对于目标2,思路是什么呢?
(1)教材P231例11-3中,告诉了我们怎样输出网页源代码到控制台,不妨先尝试一下。
(2)作业中,我们需要哪些信息呢?这些信息在什么地方可以获得呢?
目标1:Socket简单应用。
教材P238-230中例11-5
程序一:
//例题11-5,Socket简单应用,客户端与服务器的通信 //客户端程序ChatClient.java package eleven; import java.io.*; import java.net.*; public class ChatClient { public static void main(String args[]){ try{ Socket socket=new Socket("127.0.0.1",400); System.out.println("输入你要说的话,如果要退出输入bye"); //由系统标准输入设备构造BufferedReader对象 BufferedReader sin=new BufferedReader(new InputStreamReader(System.in)); //由Socket对象得到输出流,并构造PrintWriter对象 PrintWriter os=new PrintWriter(socket.getOutputStream()); BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream())); String readLine; readLine=sin.readLine(); while(! readLine.equals("bye")){ os.println(readLine); os.flush();System.out.println("Client:"+readLine); System.out.println("Server:"+is.readLine()); } os.close(); is.close(); socket.close(); }catch(Exception e){ System.out.println("Error"+e); } } }
程序二:
//服务器端程序ChatServer.java package eleven; import java.io.*; import java.net.*; import java.applet.Applet; public class ChatServer { public static void main(String args[]){ try{ ServerSocket server=null; try{ server=new ServerSocket(400); System.out.println("准备好了,退出输入bye"); }catch(Exception e){ System.out.println("can not listen to:"+e); } Socket socket=null; try{ socket=server.accept(); }catch(Exception e){ System.out.println("Error."+e); } String line; BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream())); PrintWriter os=new PrintWriter(socket.getOutputStream()); BufferedReader sin=new BufferedReader(new InputStreamReader(System.in)); System.out.println("Client:"+is.readLine()); line=sin.readLine(); while(! line.equals("bye")){ os.println(line); os.flush(); System.out.println("Server:"+line); System.out.println("Client:"+is.readLine()); line=sin.readLine(); } os.close(); is.close(); socket.close(); server.close(); }catch(Exception e){ System.out.println("Error:"+e); } } }
运行结果:
刚开始自己并没有能够在DOS下运行出来,想了好久,也尝试了许多,后来通过查找错误信息提示,发现是因为程序在在JAVA包里面的缘故,把程序从package里面移除出来重新编译运行就OK了,功夫不负有心人,下面是运行结果图:
****目标二尚未成功,有待添加******
相关文章推荐
- IIS Internal Server Error &IIS8中部署WCF服务出错:HTTP 错误 404.3 - Not Found
- 黑马程序员——基础知识总结_网络编程
- 《Java程序设计》第三次作业:网络编程
- android请求https(二)使用HttpClient 请求https
- HttpClient的释放问题
- uploadify httpError404错误
- java网络编程笔记 第二章 流
- 关于TCP的粘包和拆包
- 网络图片查看器 ——图片可放大缩小
- ubuntu网络配置
- 访问网络从网络中获取图片
- 简单的网络聊天室
- TCP三次握手,四次挥手
- 黑马程序员——Java基础——网络编程
- 抓包工具Wireshark---实例分析TCP窗口及reset
- Wireshark抓包:实例诊断TCP连接问题
- TCP/IP数据包结构详解
- Java基础---网络编程
- 黑马程序员---计算机网络分层结构及原则
- 深度学习“引擎”之争:GPU加速还是专属神经网络芯片?