聊天室的实现与设计(6)

2019-03-29 18:26

兰州交通大学博文学院毕业设计(论文)

件的监听器实现方法将会调出一个GUI界面,在上面用户可以重新对用户注册资料进行修改,此界面的监听器将会调用调用服务层的UserServiceImp类中的更新用户资料方法,此方法再继续调用Dao层的UserDAOOper接口类的实现类中更新用户资料方法,此方法使用Hibernate与底层数据库进行交互,从而将更新后的数据保存进数据库中。此功能应当仅能更新修改当前登陆用户的个人资料。 4.4.9 个人聊天记录的删除功能设计

用户点击客户端界面的删除聊天记录菜单项时,此事件的监听器实现方法调用服务层的UserServiceIm类中的删除聊天记录方法,此方法再继续调用Dao层的UserDAOOper接口类的实现类中删除聊天记录方法,此方法使用Hibernate与底层数据库进行交互,从而删除数据库中的数据。用户使用此功能时,删除的数据应该只是本人的聊天记录。

21

兰州交通大学博文学院毕业设计(论文)

5 系统实现

编程实现时按照系统的详细设计要求,在选定的开发平台下,使用指定的开发工具和开发语言,遵循特定的程序设计方法所进行的代码编写工作。代码实现也称为编程实现。代码实现将依据前面的设计方案,并对设计文档中确定的每一个对象、方法、过程以及界面等进行编程。

5.1 登陆界面的实现

图 6-1 登陆界面

在登陆时,用户需要输入用户名和密码,服务器IP和端口号。系统需要对用户名和密码进行比对,验证数据库中是否有此记录。

//验证

if(UserServiceImp.isFind(userId, pwd))

{

System.out.println(\

int sPort=Integer.parseInt(serverPort); String sIp=serverIpText.getText(); try {

int option=JOptionPane.showConfirmDialog(getPanel(1),

\

22

兰州交通大学博文学院毕业设计(论文)

boolean online=true;

if(option!=JOptionPane.OK_OPTION) { }

UserServiceImp.addOnlineUser(userId, pwd, serverIp,

online=false; selectPanel(1);

sPort, online);

ChatClient

ChatRoomClient

=

new

ChatClient(userId,serverIp,serverPort);

frame.dispose();

5.2 注册界面的实现

图 6-2 注册界面

在用户注册时,要对用户书写的资料进行验证,这样可以使用户填写的资料尽可能

23

兰州交通大学博文学院毕业设计(论文)

是正确的,以减少恶意注册,减轻数据库的数据冗余。主要代码如下:

if(userNameTextNew.getText().length()<4||userNameTextNew.getText().length()>20)

{

JOptionPane.showMessageDialog(getPanel(2), \用户名不合法!\

userNameTextNew.setText(\

}

else if(pwd.length()<=3) {

userNameTextNew.grabFocus();

JOptionPane.showMessageDialog(getPanel(2), \密码不合法,密码长度不应该低于3位);

pwdTextNew1.setText(\pwdTextNew1.grabFocus();

}else if(pwd1!=pwd2) {

JOptionPane.showMessageDialog(getPanel(2), \密码不一致); pwdTextNew2.setText(\pwdTextNew2.grabFocus();

else if(!emailTextNew.getText().trim().contains(\

JOptionPane.showMessageDialog(getPanel(2), \邮箱地址不合

法);

} else {

boolean

gender;

emailTextNew.setText(\emailTextNew.grabFocus();

if(rbBtnNew1.isSelected())

gender=true;

24

兰州交通大学博文学院毕业设计(论文)

else gender=false;

int id=UserServiceImp.add(username, pwd, realname, gender,

birthday, email, city, street, province, sign);

int option=JOptionPane.showConfirmDialog(getPanel(1), \您

的帐号是:/t\是否立即登录?\提示\

5.3 服务器端模块功能实现

图 6-3 服务器端界面

作为聊天室系统的服务器,包含了客户端接入以及处理其发出请求的一系列方法,是整个聊天室的核心,客户发送的信息就是通过服务器发送到其他用户的。 5.3.1 显示在线用户功能实现

对于用户的获取,增加,删除等操作,系统主要定义了一个用户信息链表,其主要代码如下:

public class UserInfoList {

25

private Node root = null;// 用户信息链表的根

private Node pointer = null;// 用于操作链表的游标

private int count = 0;// 链表元素个数记数器(用户数记数)


聊天室的实现与设计(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017年中国螺丝发展现状与市场前景分析(目录) - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: