基于Socket的CS程序开发.doc
文本预览下载声明
淮海工学院计算机工程学院
实验报告书
课程名: 计算机网络
题 目: 基于Socket的C/S程序开发
班 级: 软件102班
学 号: 111003232
姓 名: 叶海飚
一.实验目的与要求
理解和巩固传输层与套接字的基本知识,掌握利用套接字实现面向连接的数据传输的一般方法,深入理解客户/服务器工作模式,学会简单的客户/服务器程序的开发。
二.实验内容或题目
利用Java语言提供的Socket技术,建立一个C/S模式的应用,允许客户端用户输入2个整数,服务器端接收这2个整数,并计算出它们的和、差、积、商,最后送回客户端
三.实验步骤与源程序
1、客户端源代码如下:
import java.net.*;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Client extends Frame implements Runnable,ActionListener
{ DataInputStream in = null;
DataOutputStream out = null;
Panel p;
Label lab1,lab2,lab3;
TextField tf1,tf2,tf3;
Button connection,send;
Socket socket = null;
Thread thread;
TextArea text;
public Client()
{ super(客户端:);
setLayout(new FlowLayout());
setSize(300,250); //设置窗口大小
setLocation(200,200);//设置窗口显示位置
setResizable(false);
p=new Panel();
p.setLayout(null); p.setBounds(0,0,300,250);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{ System.exit(0); }
});
text = new TextArea();
lab1=new Label(输入IP地址:); lab1.setBounds(5,5,60,25);
lab2=new Label(第一个数字:); lab2.setBounds(5,35,60,25);
lab3=new Label(第二个数字:); lab3.setBounds(5,65,60,25);
tf1=new TextField(10); tf1.setBounds(80,5,100,25);
tf2=new TextField(10); tf2.setBounds(80,35,100,25);
tf3=new TextField(10); tf3.setBounds(80,65,100,25);
connection=new Button(连接服务器);
connection.setBounds(200,5,90,25);
connection.addActionListener(this);
send=new Button(发送数据);
send.setBounds(200,65,90,25);
send.addActionListener(this);
text=new TextArea(200,50);
text.setBounds(5,100,290,110);
p.add(lab1); p.add(lab2);
显示全部