java课程实验客户端通信.doc
文本预览下载声明
JAVA课程设计报告
课程名称: Java语言程序设计
院 (系): 计算机工程系
专业班级: 网络工程
姓 名:
学 号:
2010 年 12 月 26 日
目 录
1. 摘 要 1
2. 概要设计 1
3. 详细设计 2
4. 测试分析 9
5.总结 11
1. 摘 要
本聊天程序可以进行简单的文字聊天,但仅限于一对一的,他有自己的图形化界面,界面友好,有发送,关闭,聊天记录三个按钮分别对应着相应的功能,断开当前聊天的客户端,服务器端可以和另一个客户端聊天。可以对聊天的记录进行保存和查询。
2. 概要设计
(1)、设计包含两块,客户端程序和服务器端的程序,客户端等待连接必须保持等待,客户端请求连接。
(2)、利用Java语言的网络编程部分的Socket通信。主要有以下三个步骤:
一.建立Socket连接;
二.数据通信;
三.关闭连接。
利用的是java.net包中的Socket类和ServerSocket类及其方法:如图所示
(3)、利用java程序设计语言提供的GUI相关组件设计聊天窗口,有消息输入框,聊天过程文本域,三个聊天按钮(发送,关闭,聊天记录)。
(4)、利用JDBC连接数据库,数据库主要用于聊天记录的存放,可以通过程序对数据可进行添加,查询等操作。
3. 详细设计
(1)客户机端相关设计程序如下:
①、客户机端的连接设计:
private Socket toclient;;//客户端端口toserver
public void connectClient(){
//连接服务器端
try{
connectServer();
//创建用于连接的Socket
getStreams();
//得到输入输出流
processConnection();
//建立连接
closeConnection();
//关闭连接
}catch(EOFException eofException){
System.out.println(Server terminated connection.);
}catch(IOException ioException){
ioException.printStackTrace();
}
//捕获异常
}
private void connectServer() throws IOException
{
//连接服务器端
outFrame.setText(连接中.....\n);
toclient=new Socket(
InetAddress.getByName(chatServer),4000);
outFrame.append(连接至:+toclient.getInetAddress().getHostName());
//连接信息显示
}private JButton bt;//定义发送按钮
private JButton bt1;//定义关闭按钮
private JButton bt2;//定义聊天记录按钮bt.addActionListener(
//发送按钮的监听
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
sendMsg(inputBox.getText() );
inputBox.setText();
}
}
);
bt1.addActionListener(
//关闭按扭监听
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
bt2.addActionListener(
//聊天记录按扭监听
new ActionListener(){
public void actionPerformed(ActionEvent event)
{ JTextArea rd=new JTextArea();//聊天记录窗口定义
JFrame record=new JFrame();
JFram
显示全部