通讯录管理系统说明书.docx

上传人:b****3 文档编号:11798601 上传时间:2023-06-02 格式:DOCX 页数:15 大小:298.56KB
下载 相关 举报
通讯录管理系统说明书.docx_第1页
第1页 / 共15页
通讯录管理系统说明书.docx_第2页
第2页 / 共15页
通讯录管理系统说明书.docx_第3页
第3页 / 共15页
通讯录管理系统说明书.docx_第4页
第4页 / 共15页
通讯录管理系统说明书.docx_第5页
第5页 / 共15页
通讯录管理系统说明书.docx_第6页
第6页 / 共15页
通讯录管理系统说明书.docx_第7页
第7页 / 共15页
通讯录管理系统说明书.docx_第8页
第8页 / 共15页
通讯录管理系统说明书.docx_第9页
第9页 / 共15页
通讯录管理系统说明书.docx_第10页
第10页 / 共15页
通讯录管理系统说明书.docx_第11页
第11页 / 共15页
通讯录管理系统说明书.docx_第12页
第12页 / 共15页
通讯录管理系统说明书.docx_第13页
第13页 / 共15页
通讯录管理系统说明书.docx_第14页
第14页 / 共15页
通讯录管理系统说明书.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

通讯录管理系统说明书.docx

《通讯录管理系统说明书.docx》由会员分享,可在线阅读,更多相关《通讯录管理系统说明书.docx(15页珍藏版)》请在冰点文库上搜索。

通讯录管理系统说明书.docx

通讯录管理系统说明书

 

目录

 

一、设计题目1

二、设计目的1

三、需求分析1

四、总体设计1

1.程序总体设计思想1

2.程序设计总体框图2

五、详细设计3

1.功能模块图3

2.数据库概念模型3

3.数据库逻辑结构设计4

4.数据库表的建立4

5.数据库的连接5

六、算法描述与实现5

1.登录界面5

2.通讯记录界面7

3.修改联系人界面8

4.删除联系人界面10

5.添加联系人记录界面11

七、结论12

八、参考文献12

一、设计题目

通讯录管理系统

二、设计目的

本课程设计是java语言学习中很重要的实践性环节之一,是在学习完java课程后进行的一次全面的综合练习旨在巩固和加深我们对java语言的基本知识的理解和掌握,掌握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,掌握书写程序设计说明文档的能力,提高运用java语言解决实际问题的能力。

三、需求分析

  通讯录要求实现最基本的功能,包括新建联系人,查找信息,删除信息,修改信息,退出系统,为此需要首先定义记录项的格式,其基本属性包括姓名、电话、地址、邮箱。

通讯录管理系统的主要包括以下功能:

(1).新建联系人:

操作添加一条新的联系人。

(2).查找信息:

查出一条已经存在的联系人。

(3).删除信息:

删除一个联系人的信息。

(4).修改信息:

修改联系人的基本信息。

 

四、总体设计

1.程序总体设计思想

个人通讯录件的功能模块有:

(1)提供登陆界面,方便用户进入,满足需求;

(2)添加:

可以添加通讯录记录,依次输入姓名、性别、出生日期、移动电话、固定电话、MSN/QQ、公司、E-Mail地址、家庭住址、组别、备注后,会提示是否继续添加;

(3)显示:

可以以表格形式输出所有通讯录里的记录;

(4)查询:

可以用姓名查询;

(5)修改:

输入欲修改的那个人的名字后,再依次输入姓名、性别、出生日期、移动电话、固定电话、MSN/QQ、公司、E-Mail地址、家庭住址、组别、备注即可完成修改;

(6)删除:

可以直接删除多余的通讯录记录;

(7)帮助:

可以在帮助里面修改用户密码;

(8)导出数据库:

可以将数据库以文本txt格式导出。

程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。

2.程序设计总体框图

个人通讯录管理系统设计的总体框图如图1所示。

图1个人通讯录管理系统设计的总体框图

五、详细设计

1.功能模块图

1.根据上述的功能,可以设计出系统的总体功能模块,如图2所示。

图2通讯录管理系统功能模块示意图

2.“新建联系人”功能模块包括姓名、电话、QQ、邮箱四个属性,其如图3所示。

图3新建联系人

2.数据库概念模型

根据需求分析抽象出信息结构,可得该系统的E-R图。

用户E-R图,如图4所示。

图4用户E-R图

根据分E-R图和需求分析,可得到总E-R图,如图5所示。

图5总体E-R图

3.数据库逻辑结构设计

基本信息表Friend用来保存姓名、电话、地址、邮箱信息。

表Friend的结构如表1所示。

表1表Friend的结构

编号

字段名称

数据结构

说明

1

Name

Char

联系人姓名

2

Tele

Char

联系人电话

3

Qq

Char

联系人QQ

4

Mail

Char

联系人邮箱

4.数据库表的建立

在设计数据库表结构之前,首先要创建一个数据库。

本系统使用的数据库为Friend。

创建表Friend(基本信息表),它的代码如下:

CREATETABLEFriend

(Namechar(20)PRIMARYKEY,

Telechar(20),

Addrchar(30),

Mailchar(20)

GO

5.数据库的连接

在该系统中数据库的连接使用mysql-connector-java-5.1.6-bin驱动。

将该驱动通过eclipse添加到工程“通讯录管理系统”中,如图6。

然后通过控制语句实现与数据库的连通。

图6找到的数据库连接驱动mysql-connector-java-5.1.6-bin

 

六、算法描述与实现

1.登录界面

登录界面,如图7所示。

 

 

图7登录界面

在登录界面中,用户可以输入正确的用户名,密码,从而进入通讯录。

只有登录成功才可以浏览通讯录的信息,以及添加新的联系人,修改联系人等操作。

主要代码如下:

privatevoidokButtonActionPerformed(java.awt.event.ActionEventevt){

//TODOaddyourhandlingcodehere:

IStudentDaodao=newStudentDao();

IUserDaouserDao=newUserDao();

Stringname=nameField.getText().trim();

Stringpassword=String.valueOf(passwordField.getPassword());

IUseruser=newUser(name,password);

booleanresult=false;

try{

result=userDao.isContain(user);

if(result==false)

{

JOptionPane.showConfirmDialog(null,"账号或密码错误!

","登录提示",

JOptionPane.CLOSED_OPTION);

passwordField.setText(null);

}else{

MainWindowmainWindow=newMainWindow(dao);

mainWindow.setVisible(true);

this.setVisible(false);

}

}catch(Exceptione){

JOptionPane.showMessageDialog(this,e.getMessage(),"登录失败!

",JOptionPane.ERROR_MESSAGE);

}

}

2.通讯记录界面

通讯录界面,如图8所示。

 

 

图8通讯记录界面

在通讯录界面,用户可以浏览所有的联系记录。

主要代码如下:

publicMainWindow(IStudentDaodao){

initComponents();

setResizable(false);

setLocationRelativeTo(this);

this.dao=dao;

updateView();

}

//更新视图

privatevoidupdateView(){

Liststudents=dao.getAllStudent();

model=newDefaultTableModel();

model.addColumn("姓名");

model.addColumn("电话号码");

model.addColumn("QQ号吗");

model.addColumn("邮箱号码");

for(IStudenteach:

students)

model.addRow(newObject[]{each.getName(),each.getTellNumber(),

each.getQqNumber(),each.getMail()});

table.setModel(model);

setButtonEnabled(false);

}

3.修改联系人界面

修改界面,如图9所示。

 

 

图9修改联系人界面

用户可以根据需要修改信息,修改完毕后,点击确定按钮,修改后的信息将存入数据库。

主要代码如下:

publicModifyStudent(java.awt.Frameparent,booleanmodal,

IStudentDaodao,IStudentoldStuedent){

super(parent,modal);

initComponents();

setLocationRelativeTo(parent);

setResizable(false);

this.dao=dao;

this.oldStudent=oldStuedent;

nameTextField.setText(oldStudent.getName());

tellNumber.setText(String.valueOf(oldStudent.getTellNumber()));

qqNumber.setText(String.valueOf(oldStuedent.getQqNumber()));

mail.setText(String.valueOf(oldStuedent.getMail()));

setVisible(true);

}

privatevoidokButtonActionPerformed(java.awt.event.ActionEventevt){

Stringname=nameTextField.getText().trim();

Stringtell=tellNumber.getText().trim();

Stringqq=qqNumber.getText().trim();

StringmailString=mail.getText().trim();

IStudentoldStudent=newStudent(name,tell,qq,mailString);

dao.update(oldStudent);

setVisible(false);

}

4.删除联系人界面

删除界面,如图10所示。

 

图10删除联系人界面

用户可以根据自己的需求删除通讯录中无用的信息。

选中要删除的行,点击删除按钮,单击确定,根据提示确定删除,即可删除信息。

主要代码如下:

@SuppressWarnings("static-access")

privatevoiddeleteButtonActionPerformed(java.awt.event.ActionEventevt){

//收集选中的对象信息

intindex=table.getSelectedRow();

Stringname=(String)model.getValueAt(index,0);

StringtellNumber=(String)model.getValueAt(index,1);

StringqqNumber=(String)model.getValueAt(index,2);

Stringmail=(String)model.getValueAt(index,3);

IStudentoldStudent=newStudent(name,tellNumber,qqNumber,mail);

JOptionPanepanel=newJOptionPane();

intresult=panel.showConfirmDialog(null,"确定要删除"+"【"+name+"】"

+"的全部信息吗?

","删除记录",JOptionPane.YES_NO_OPTION);

if(result==JOptionPane.YES_OPTION){

dao.delete(oldStudent);

updateView();

}

}

5.添加联系人记录界面

添加界面,如图11所示。

 

图11添加联系人记录界面

单击添加按钮,在弹出的添加对话框中输入对应得信息。

姓名后输入联系人姓名,联系方式可根据需要填写,如:

电话号码、邮箱、QQ号码等。

主要代码如下:

privatevoidokButtonActionPerformed(java.awt.event.ActionEventevt){

try{

//获取用信息

Stringname=nameTextField.getText().trim();

Stringtell=tellNumber.getText().trim();

Stringqq=qqNumber.getText().trim();

StringmailString=mail.getText().trim();

IStudentstudent=newStudent(name,tell,qq,mailString);

dao.insert(student);

setVisible(false);

}catch(Exceptione){

JOptionPane.showMessageDialog(this,e.getMessage());

}

}

七、结论

由于课程设计时间较短,所以该系统还有许多不尽人意的地方,例如界面设计不够美观,统计功能不够完善等等,这些都有待进一步改善。

经过这周的课程设计,大大提高了我的实际操作能力和思想的远见能力,做到真正的从感性认识上升到理性认识再到实际的操作中,真正做到学以致用。

八、参考文献

[1].张振领《Java语言程序设计》中国电力出版社

[2].耿详义《Java程序设计教程》清华大学出版社

[3].耿详义《Java课程设计》清华大学出版社

[4].孙鑫Java视频教程

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 预防医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2