云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 《java程序设计》实验指导书(09高职)

《java程序设计》实验指导书(09高职)

  • 62 次阅读
  • 3 次下载
  • 2025/5/2 21:41:25

山东信息职业技术学院java实验报告

实验十五 网络通信

一、实验目的

1.理解网络通信的原理和常用通信技术的概念; 2.掌握基于TCP协议的套接字的网络编程方法 3.掌握网络通信在实际应用开发程序中的应用。 二、实验内容

案例 聊天程序解析

通过建立一个Socket客户端和一个ServerSocket服务端进行实时数据交换。运行时先打开服务器端,然后再打开客户端,单击客户端的“连接服务器”按钮将与服务器建立连接;连接之后,双方在各自图形界面的文本框中填写要发送的信息,然后单击 “Send”按钮,就可以进行通信了。程序运行结果如图1所示。整个程序分成客户端和服务器端两大部分,分别保存成Client.java和Server.java两个文件。

图1 聊天程序运行界面(客户端和服务器端)

1.客户端程序代码: import java.net.*; import java.io.*; import java.awt.*;

import java.awt.event.*; import javax.swing.*;

class Client extends JFrame implements ActionListener

{ Socket sock; //定义套接字对象 JTextArea t1=new JTextArea(); JTextField t2=new JTextField(20); JButton b1=new JButton(\ JButton b2=new JButton(\连接服务器\ DataOutputStream out; //定义数据输出流 DataInputStream in; //定义数据输出流 public Client()

{ JScrollPane jsp=new JScrollPane(t1); this.getContentPane().add(jsp,\ JPanel p1=new JPanel(); p1.add(t2); p1.add(b1); JPanel p2=new JPanel(); p2.add(b2); this.getContentPane().add(p2,\ this.getContentPane().add(p1,\ b1.addActionListener(this); b2.addActionListener(this); setTitle(\客户端\ setSize(340,200); setVisible(true);

29

山东信息职业技术学院java实验报告

addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e)

{

}); }

public void actionPerformed(ActionEvent e) {

} else {

} }

public static void main(String agrs[]) {

30

山东信息职业技术学院java实验报告

Client mainFrame=new Client(); } }

class Communnion extends Thread { Client fp; Communnion(Client fp)

{ this.fp=fp; } public void run()

{ String msg=null; while(true)

{

} try{ fp.out.close(); //关闭Socket输出流 fp.in.close(); //关闭Socket输入流 fp.sock.close(); //关闭Socket }catch(Exception ee){} } }

2.服务器端代码: import java.net.*; import java.io.*; import java.awt.*;

import java.awt.event.*; import javax.swing.*;

class Server extends JFrame implements ActionListener { ServerSocket serverSock; //定义服务器套接字 Socket sock; //定义客户套接字 JTextArea t1=new JTextArea(); JTextField t2=new JTextField(20);

31

山东信息职业技术学院java实验报告

JButton b1=new JButton(\

DataOutputStream out; //定义数据输出流 DataInputStream in; //定义数据输入流 String cname=null; public Server() {

JScrollPane jsp=new JScrollPane(t1); this.getContentPane().add(jsp,\ JPanel p1=new JPanel(); p1.add(t2); p1.add(b1); this.getContentPane().add(p1,\ b1.addActionListener(this); setTitle(\服务器\ setSize(340,200); setVisible(true); try{ sock=serverSock.accept(); //使用accept()阻塞等待客户请求, //有客户请求到来则产生一个Socket对象,并继续执行 out=new DataOutputStream(sock.getOutputStream()); //由Socket对象得到输入流,并构造相应的DataOutputStream对象 in=new DataInputStream(sock.getInputStream());

//由socket对象得到输出流,并构造DataInputStream对象

out.writeUTF(\你连接服务器成功\ // 给客户反馈信息 Communnion th=new Communnion(this); //建立与客户端交互的线程 th.start(); // 启动线程 }catch(Exception e){} addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e)

{ try{

out.writeUTF(\ //退出时告诉客户端 }catch(Exception ee){} dispose(); System.exit(0); } }); }

public void actionPerformed(ActionEvent e) {

32

搜索更多关于: 《java程序设计》实验指导书(09高职) 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

山东信息职业技术学院java实验报告 实验十五 网络通信 一、实验目的 1.理解网络通信的原理和常用通信技术的概念; 2.掌握基于TCP协议的套接字的网络编程方法 3.掌握网络通信在实际应用开发程序中的应用。 二、实验内容 案例 聊天程序解析 通过建立一个Socket客户端和一个ServerSocket服务端进行实时数据交换。运行时先打开服务器端,然后再打开客户端,单击客户端的“连接服务器”按钮将与服务器建立连接;连接之后,双方在各自图形界面的文本框中填写要发送的信息,然后单击 “Send”按钮,就可以进行通信了。程序运行结果如图1所示。整个程序分成客户端和服务器端两大部分,分别保存成Client.java和Server.java两个文件。

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com