基于JAVA个人通讯录管理系统开发和设计

基于JAVA个人通讯录管理系统开发和设计
基于JAVA个人通讯录管理系统开发和设计

1

郑州科技学院

Java 课程设计报告

题 目 Java 通讯录课程设计

课 程 名 称 Java 程序设计实用教程

院 部 名 称 信息工程学院 专 业 计算机科学与技术专业 班 级 11计科1班 学 生 姓 名 胡燊 学 号 201115007 指 导 教 师 杜 远 坤 完 成 时 间 2013年12月20日

摘要

本文介绍了一个简单实用的个人通讯录管理系统java工程,详细描述了本人在编程时候的编程思想和在MyEclipse 中调试运行的步骤,简明扼要地介绍了整个工程的功能和实用方法。这个个人通讯录管理系统含有添加、删除、查找等基本功能,同时也添加了一些有趣的小功能——支持背景图片的更换。在程序中完成了与数据库的通信,并同样可以对数据库进行添加、查找、删除等功能。

关键词:个人通讯录管理系统、添加、删除、查找、数据库

2

目录

摘要 (2)

1 绪论 (4)

1.1 设计目的 (4)

1.2 设计内容 (4)

2 程序要求 (4)

3 算法分析 (5)

3.1 程序总体设计思想 (5)

3.2 程序设计总体框图 (5)

3.3 程序详细设计 (6)

4 调试过程 (8)

5 体会 (16)

6 参考文献 (17)

附录(源程序) (18)

3

1 绪论

1.1 设计目的

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

1.2 设计内容

在设计一个完整的系统中,我从系统的管理员登录界面开始做,另外依据相关要求,对系统增加了数据库支持(Microsoft Access做的数据库),还有对数据库里的数据进行增加、删除、显示所有记录、查询记录、导出备份数据库文件。另外为了界面美观,增加了系统主界面背景界面图片的支持。为了保证数据库的安全,在系统中设立了管理员权限,即只有被允许的用户才可以进入该系统。

2 程序要求

设计一个通讯录管理软件,要求如下:

增加记录、删除记录、显示所有记录、查询记录、文件备份、退出。通讯录记录信息包括:姓名,电话,email等。

(1)通讯录的每一条信息包括姓名,单位,电话!(可用数组或数据库);

(2)输入功能:可以一次完成若干条信息的输入;

(3)显示功能:完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示);

(4)查找功能:完成按姓名查找通讯信息;

(5)删除功能:完成按姓名删除通讯信息;

(6)应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!

4

3 算法分析

3.1 程序总体设计思想

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

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

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

(3)显示:可以以表格形式输出所有通讯录里的记录;

(4)查询:可以用姓名查询;

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

(6)删除:可以直接删除多余的通讯录记录;

(7)帮助:可以在帮助里面修改用户密码;

(8)导出数据库:可以将数据库以文本txt格式导出。

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

3.2 程序设计总体框图

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

5

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

3.3 程序详细设计

该程序共有18个类,也分别创建了18个java源程序文件,以下按照文件名字母排序先后解释(在设计软件MyEclipse工程排序也是如此),另外在此只是简要介绍相关源程序所实现的功能,程序截图参见调试,源程序参见附录:

Demonstrationaction.java文件做的是功能表中“编辑—查找全部”的功能,使用此项功能的时候,在点击“显示查询结果”后,让界面显示出全部数据库中的内容;点击“退出全部查询”的时候退出该功能。

Demonstrationframe.java文件做的就是“编辑—查找全部”的界面,上面有标题、文6

字显示框和两个控制按钮——“显示查询结果”和“退出全部查询”。

Dlframe.java文件做的是“编辑—删除”的界面,有一个文字输入框(提供按名字来删除),和两个控制按钮——“删除”和“放弃”。

Dlframeaction.java文件做的是“编辑—删除”的相关功能,当输入名字之后会进行查找删除,若在数据库中含有当前名字的数据则删除该条数据并显示“删除成功”,否则显示“未找到该项”。点击“放弃”即退出删除功能。

Fdframe.java文件做的是“编辑—查询”的界面,提供按名字搜索,有一个文字输入框,和两个控制按钮——“查询”和“撤销”。

Fdframeaction.java文件做的是“编辑—查询”的相关功能,输入需要查询的姓名之后,如若在数据库中有符合的数据后,则显示查询结果,并弹窗显示“查询结束”;如若没有对应的数据,则弹窗显示“没有记录”。点击“撤销”则退出查询功能。

Fdkeep.java文件做的是“文件—导出数据库”的界面,有一个文字输入框提供输入导出的数据库的完整路径,两个控制按钮——“save”和“give up”。

Fdkeepaction.java文件做的是“文件—导出数据库”的相关功能,输入了完整路径之后,会启动Microsoft Office Access导出数据库;如若路径错误,则会弹窗显示“路径错误!”。点击“give up”后则退出界面。

Frameaction.java文件做的是主界面的相关功能选择。主界面有三个大选项,文件、编辑和帮助。其中文件包括导入数据库和退出,编辑包括删除、添加、按姓名查找和查找全部,帮助则是修改管理员密码。

Image.java文件是使主界面支持背景图片的切换,使用的是工程文件夹Images下的U.jpg。支持任意大小的图片。

Loginframe.java文件做的是主界面的登录界面。即在程序以java Application运行后需要进行用户登录的界面,提供用户名和密码的文本输入框和两个控制按钮——“certain”和“cancel”。

LoginIn.java文件做的是登录界面的相关功能,对输入的用户名与密码和数据库进行匹配,如若正确则弹窗显示“登录成功”,否则弹窗显示“用户名或密码错误”。

Myaddress.java文件做的是定义了一个公共类Myaddress,并定义了主函数是调用这个Myaddress的公共类。

Panelframe.java文件做的是“编辑—添加”的界面,提供给用户向数据库添加新数据,有对于姓名、性别、出生日期、移动电话、固定电话、MSN/QQ、公司地址、E-Mail 地址、家庭住址、组别、备注等信息录入的文本输入框。以及最后的两个控制按钮——

7

“保存”和“取消”。

Panelframeaction.java文件做的是“编辑—添加”的相关功能。在界面中输入相关信息后,点击保存则系统向数据库存入信息,点击取消则将信息丢弃。同时还确保信息的相关性,例如控制了出生日期是使用了日期控件的使用等等。

Revisionmovement.java文件做的是“帮助—修改密码”的相关功能。首先验证用户输入的原始密码是否正确,然后接受用户输入的6位以上的新密码,存入数据库并修改密码信息。

Revisionpassword.java文件做的是“帮助—修改密码”的界面。界面包括两个旧密码和新密码的文本输入框,和两个控制按钮——“保存”和“取消”。

Year.java文件做的是在出生日期里面的日期控件,对平年闰年的区分,然后对各个月不同日期做了相关定义。

4 调试过程

调试是一耳光程序员最基本的技能,其重要性甚至超过学习一门语言。不会调试的程序员就意味着他即使会一门语言,却不能编写出任何好的软件。这是当初我最开始接触C语言的时候让我感受很深的一句话,我当时很不能理解如果调试真的这么重要,为什么在我们的课本里面却找不到相关的内容,甚至一些相当经典的教材里面也没有对其进行大篇幅的介绍。直到自己开始写了一些大一点的程序,才发现有时候自己最初设计程序在一些细节上的新颖想法是那么的可笑,带来的只是无穷无尽的错误和威胁。

程序编写完成就应该调试自己所完成的程序,以减少程序中的bug。以下是我的程序调试以及运行过程截图。

说明:本程序的运行环境是MyEclipse 6.5,经验证在Eclipse中运行会产生错误“Column not Found”,但是最开始我是在MyEclipse中完成的程序,我也就没有去就针对Eclipse进行更改,Linux的环境虚拟机我没有安装,所以不知道在虚拟机Linux下是否能够正常运行。

打开MyEclipse 6.5软件,导入Workspace,如图4-1:

8

图4-1 编程环境截图

右键点击工程,选择“Run as—Java Application”,成功运行,出现用户登录界面,输

入用户名“wj”,密码“123”,如图4-2:

点击“certain”,登录成功,点击确定,进入个人通讯录管理系统,如图4-3:

9

1

图4-3 个人通讯录管理系统主界面

点击左上角的“文件—导出数据库”,如图4-4:

图4-4 导出数据库

输入完整路径之后点击“save ”就可以以文本格式保存数据库,例如我们就按照提示输入路径,则数据库的备份文件如图4-5:

11

图4-5 保存的数据库文件

点击“文件—退出”则退出了个人通讯录管理系统。

接下来是对数据库进行添加、编辑、查找、删除等功能。故先看看数据库的原文件。注:本数据库是由Microsoft Office Access 2007创建,如若计算机里面没有Access ,编译环境会对Access 驱动的设置报错!数据库如图4-6:

图4-6 原始数据库

选择“编辑—添加”对数据库进行添加操作。输入如下信息,如图4-7:

2

图4-7 信息添加界面

点击“保存”将新加的信息加入数据库,系统会告知“添加成功”。如图4-8:

图 4-8 系统信息添加界面

重新查看数据库,可以发现新添加的信息已经加入了数据库。如图4-9:

图4-9 添加信息后的数据库部分截图

由上面操作可以知道,添加功能正常。

选择“编辑—删除”,按照提示输入删除的用户名,如图4-10,就假设我们删除刚才

添加的信息:

1

13

图4-10 删除记录

点击“删除”后,则系统会提示“删除成功”,如图4-11:

图4-11 删除成功

重新查看数据库,发现刚才添加的信息已经被成功删除,如图4-12:

图4-12 成功删除后的数据库

通过以上的删除操作可以知道,系统的删除功能也是可以正常运行的。 点击“文件—按姓名查找”,输入所需要查找的用户名,如图4-13:

图4-13 查找记录

点击“查询”,系统会对数据库进行查找,并提示“查找结束”,如图4-14:

图4-14 查找结束

并会弹窗显示所查找的结果,如图4-15:

4

图4-15 查找结果

以上步骤只能说明是正确输入了数据库中包含的数据,如若数据库中未含有被查找

的内容,则系统也应该做出正确的反应。如图4-16,查找数据库中没有的信息:

图4-16 输入数据库中没有的用户名

点击“查询”之后,则系统提示“没有记录”,如图4-17:

图4-17 查找错误的消息提示

以上通过了正确查找和错误两方面充分论证了查找功能的正常运行。

1

点击文件“编辑—查找全部”,则会弹出一个空白的查找结果界面,这是因为在程序设计中默认的是不显示所得的信息,如图4-18:

图4-18 查找全部界面

然后点击“显示查询结果”,即可显示出全部查询结果。如图4-19:

图4-19 查找全部结果

另外本系统还有一个功能,更改当前用户的密码。点击“帮助—修改密码”,显示修改密码界面,如图4-20:

15

图4-20 修改密码界面

分别输入当前的旧密码和所更改的新密码,如图4-21:

图4-21 输入旧密码和新密码

点击“保存”即可成功修改密码,并可以修改数据库。如图4-22:

图4-22 密码修改成功消息

查看数据库中的表userpass,新密码已经更改成功,如图4-23:

图4-23 数据库中的新密码显示

另外需要注意的是,修改的新密码是需要该系统重启生效。即退出后重新运行该工程才能使新密码生效。

至此,个人通讯录管理系统的调试运行全部完成。

5 体会

这次的程序实设计实验是对我们进入大学以来学习程序设计语言结果的一次大检验。自己动手,自己发现和解决问题。发现了自己的许多不足。平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行,解决其中大部

16

分问题,当然还存在一些问题没有解决。我相信在以后的学习能够解决好它们。但是,收获还是不小的,我不仅对Java的操作有了进一步的掌握,还了解到了程序设计的书写风格及其注释的格式。

6 参考文献

[1] 王克宏. Java技术教程(基础篇).清华人学出版社,2002

[2] 古大龙. 软件开发的形式化方法.高等教育出版社,2005

[3]陈强. Java程序设计.北京:人民邮电出版社,2001

[4]侯捷. Java编程思想.第2版.北京:机械工业出版社,2002

[5]Herbert Schildt. Java2参考大全.北京:清华大学出版社,2002

[6] 谭浩强.sql Sever2000数据库实训教程,清华大学出版社,2007

[7] 王珊、萨师煊.数据库系统概论,高等教育出版社,2006

17

附录(源程序)

import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.Statement;

import java.util.ArrayList;

public class contacts {

int conNum;

String name;

String tel;

String QQ;

String email;

String address;

public contacts()

{ }

public contacts(int conNum)

{

this.conNum = conNum;

}

public contacts(int conNum, String name, String tel, String QQ,String email,String address)

{

this.conNum = conNum;

https://www.360docs.net/doc/a611532806.html, = name;

this.tel = tel;

this.QQ = QQ;

this.email = email;

this.address = address;

18

}

public int getconNum()

{

return conNum;

}

public void setconNum(int conNum)

{

this.conNum = conNum;

}

public String getName()

{

return name;

}

public void setName(String name)

{

https://www.360docs.net/doc/a611532806.html, = name;

}

public String getTel()

{

return tel;

}

public void setTel(String tel)

{

this.tel =tel;

}

public void setQQ(String QQ)

{

this.QQ=QQ;

}

public String getQQ()

{

19

return QQ;

}

public void setEmail(String email)

{

this.email= email;

}

public String getEmail()

{

return email;

}

public void setAddress(String address)

{

this.address= address;

}

public String getAddress()

{

return address;

}

//向数据库中插入联系人基本信息,若插入成功返回true

public boolean insertcontacts()

{

boolean b = true;

try

{

Connection con = SqlConnection.getCon();

Statement statement = con.createStatement();

String sql = "insert into contacts values('" + conNum + "','" + name

+ "','" + tel + "','" + QQ + "','" +email+ "','" +address+ "')";

//sql = new String(sql.getBytes("GB2312"), "ISO8859_1"); //处理汉字乱码

20

个人通讯录管理系统c语言源程序优秀版)

#include /*头文件*/ #include //包含最常用的系统函数 #include //关于字符数组的函数定义的头文件#include //控制台输入输出 //定义结构体 struct tongxunlu /*定义通讯录结构体变量*/ { char xingming[20]; /*定义输入名字的数组*/ char dianhua[20]; /*定义输入电话号码的数组*/ char dizhi[40]; /*定义输入地址的数组*/ } txl[100]; //默认100个数据 int n=0;//记录数据联系人数量 FILE *fp; /*定义文件*/ //程序用到的所有函数 void zhucaidan(); /*主菜单函数*/ void zengjia(); /*增加联系人函数*/ void readfile(); /*文件中读入函数*/ void writefile(); /*文件中写入函数*/ void xiugai(); /*修改联系人函数*/ void xiugai_xingming(); /*姓名修改*/ void xiugai_dianhua(); /*电话号码修改*/ void chazhao(); /*查找联系人函数*/

void chazhao_xingming(); /*按姓名查找*/ void chazhao_dianhua(); /*按号码查找*/ void shanchu(); /*删除联系人函数*/ void shanchu_quanbu(); /*全部删除*/ void shanchu_dange(); /*单个删除*/ void xianshi(); /*号码显示*/ //程序主函数模块六 void main() /*主函数main*/ { readfile(); /*读入文件*/ while(1) /* 循环(永远进行)*/ { zhucaidan(); /*调用主菜单函数*/ } } //读取文件函数部分开始模块七 void readfile() { if((fp=fopen("c:\\通讯录.txt","r"))==NULL) /*以只读方式打开判定文件是否为空*/ { printf("\n\t\t\t 通讯录文件不存在"); /*判断结论*/ if ((fp=fopen("同通讯录.txt","w"))==NULL) /*只写方式判断*/

个人通讯录管理系统,java源代码

/** * 业务类 */ public class PABmanager { /** * 系统启动 */ public static void main(String[] args) { Scanner input = new Scanner(System.in); String num = input.next(); if ("1".equals(num)) { String lbmc = input.next(); String lbsm = input.next(); String lbbz = input.next(); Type type = new Type(lbmc,lbsm,lbbz); typeDao.createType(type); }else if ("2".equals(num)) { List types = typeDao.queryType(); for (int i = 0; i < types.size(); i++) { Type type =types.get(i);

} }else if ("3".equals(num)) { String lbmc = input.next(); Type type = new Type(lbmc,null,null); typeDao.deleteType(type); }else if ("4".equals(num)) { break; }else{ } } }else if ("2".equals(in2)) { break; }else{ } } }else if ("3".equals(in2)) { System.exit(-1); }else{ } } } }

个人通讯录管理系统

C语言程序设计 课程设计报告 个人通讯录管理系统设计 专业__网络工程___ _____ 班级___(3)班___________ 学号__3148119322 姓名__吴道金 _ 学号_ 3148119319 _姓名_ 林东垚 ___ 学号_ 3148119359 _姓名__ 林家勇 __ 学号__3149119349__________姓名___上官景铨_____ ______ 福建工程学院软件学院 2015年月日 (正文部分)

一、需求分析 建立一通讯录,输入姓名、电话号码、住址等信息,然后对通信簿进行显示、查找、添加、修改及删除。功能要求(1) 通讯录的每一条信息包括姓名、单位、固定电话、移动手机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ等。 (2) 输入功能:可以一次完成若干条信息的输入。 (3) 显示功能:完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示) (4) 查找功能:可以按姓名等多种方式查找通讯信息 (5) 增加、删除、修改功能:完成通讯录信息的多种更新 二、总体设计

三、详细设计 void menu(); /*菜单*/ void Add(); /*添加记录*/ void print(); /*输出记录*/ void Find(); /*查找记录(按姓名)*/

void Delete(); /*删除记录*/ void SaveFree(); /*保存到文件*/ void Creat(); /*打开文件*/

四、程序源代码 #include #include #include

软件体系结构 个人通讯录管理系统

课程实验报告 软件系统结构 专业 软件工程 学生姓名 张伯虎 班级 B 软件121 学 号 1210701128 指导老师 孙莉

实验一 C/S结构应用设计 一、实验目的 设计并实现一个基于多层C/S结构的数据库应用,熟悉多层C/S体系结构及其基本处理流程,了解多层结构表现层、业务逻辑层(功能层)、数据访问层所完成的功能,掌握多层C/S结构的数据库应用设计方法,对这三层进行明确分割,并在逻辑上使其独立。学生通过本实验的训练能够熟练掌握对小型数据库应用系统三层结构层次划分方法及系统实现技术。 二、实验原理 1、C/S软件体系结构是基于资源不对等,且为实现共享而提出来的,是20世纪90年代成熟起来的技术,C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分布到多个处理机上。 2、C/S体系结构有三个主要组成部分:数据库服务器、客户应用程序和网络。 (1)二层客户/服务器风格 (2

三、主要仪器及耗材 每人一台计算机 四、实验步骤及内容 需要实际设计开发出一个简单的基于二层C/S结构的应用系统——个人通讯录管理系统,主要步骤和内容如下: 1、在 SQL Server 2000中建立数据库Contact,建立表friend。 建立数据库Contact: create database Contact use contact go 建立表friend: Create table friend( Fid int identity(1,1) not null,--编号信息 Fname varchar(8) not null,--姓名信息 Fphone varchar(12) ,--电话信息 Faddress varchar(100) –地址信息 ) go 2、在Visual Studio 2000中用C#语言建立用户界面层(UI)程序:Contact 项目,主要呈现用户操作界面。

个人通讯录java代码完整版

import java.awt.Choice; import java.awt.Container; import java.awt.GridLayout; import java.awt.MenuItem; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.print.Printable; import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; import java.text.Collator; import java.util.Arrays; import https://www.360docs.net/doc/a611532806.html,parator; import java.util.Scanner; import javax.swing.JButton; import javax.swing.JDialog; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenuBar; import javax.swing.JMenu; import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.WindowConstants; public class MyAddBook { public static JFrame frame; public MyAddBook(){ frame=new JFrame("个人通讯录"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); JMenuBar menubar=new JMenuBar(); JMenu edit=new JMenu("编辑"); JMenuItem edit1=new JMenuItem("录入"); JMenuItem edit2=new JMenuItem("查询"); JMenuItem edit3=new JMenuItem("删除"); JMenuItem edit4=new JMenuItem("修改"); JMenuItem edit5=new JMenuItem("排序");

个人通信录管理系统 课程设计

中国矿业大学银川学院 面向对象程序设计课程设计报告 (2011/2012学年第二学期) 题目名称个人通信录管理系统 系部机电动力与信息工程系 专业计算机科学与技术 班级 10级计算机 姓名 xxx 学号 120100510062 完成时间 2011年 6 月 指导老师 xxx

引言: (3) 1 课程设计目的及意义 (5) 2 详细设计 (5) 2.1需求描述 (5) 2.1.1通讯录界面设计 (5) 2.1.2通讯录添加联系人模块 (5) 2.1.3通讯录删除联系人模块 (5) 2.1.4通讯录拨号模块 (6) 2.1.5通讯录显示所有联系人模块 (6) 2.1.6通讯录修改联系人模块 (6) 主要是修改联系人的信息,界面提示要输入需要修改的姓名或者电话号码,如果不正确,显示对不起,联系人中没有你找的人。如果正确,则显示出改联系人的所有信息,并提示根据下面提示修改信息,姓名、电话号、QQ、邮编、地址等 (6) 2.1.7通讯录关闭通讯录模块 (6) 提示谢谢使用! (6) 2.2功能描述 (6) 2.2.1添加联系人; (6) 2.2.2删除联系人 (8) 2.2.3拨号 (11) 2.2.4显示所有联系人的实现: (12) 2.2.5 修改联系人模块 (13) 2.2.6 查询联系人模块 (17) 对文件进行遍历,将联系人的所有信息都显示出来。 (17) 2.2.7关闭通讯录模块 (19) 提示谢谢使用! (19) 2.2.8主函数 (19) 2.3程序用行说明 (20) 2.3.1程序界面 (20) 2.3.2添加联系人信息 (20) 2.3.3删除联系人 (21) 2.3.4拨号 (23) 2.3.5显示所有联系人 (23) (23) 2.3.6修改联系人信息 (23) 2.3.7查询联系人 (24) 2.3.8关闭通讯录 (24) 3课程设计总结 (25) 3.1编程日志 (25) 3.2测试报告 (25) 4 心得体会: (25) 附录: (26) 参考文献: (43)

Java课程设计--个人通讯录管理系统

《JAVA程序设计》课程设计说明书

目录 1 引言 (1) 1.1课程设计选题 (1) 1.2课程设计的目的 (1) 1.3本选题的设计背景 (1) 2 需求分析 (1) 2.1 功能需求 (1) 2.2 系统的开发运行环境 (2) 3 总体设计 (2) 3.1 系统体系结构设计 (2) 3.2系统功能模块及主要类设计 (3) 3.3数据库设计 (5) 4 详细设计与实现 (7) 4.1 登录模块 (7) 4.2 注册新用户模块 (8) 4.3 查询模块 (9) 4.4 添加模块 (11) 4.5 修改模块 (13) 4.6删除模块 (16) 4.7备份模块 (18) 4.8退出模块 (19) 5 小结和展望 (20) 参考文献 (22) 附录 (22) 使用说明书 (22)

1引言 1.1课程设计选题 《个人通讯录管理系统》 1.2课程设计的目的 通过编写并调试一个Java应用软件,熟悉和掌握使用Java开发应用程序的完整过程。 使学生巩固和加深以Java 语言为基础的面向对象编程技术理论知识的理解,提高实际动手编程能力的培养,掌握以Java为核心的应用软件开发方案,达到能独立阅读、编制和调试一定规模的Java程序的水平。 1.3本选题的设计背景 一直以来就想做一个比较实用的通讯录管理系统,这样可以方便我对于身边联系人信息的管理,防止遗忘和丢失。 在这样一个信息化的社会里,人们的生活也越来越离不开电脑了,本次通过做个人通讯录管理系统,希望摈弃传统的纸质记录的弊端,发挥电脑软件的优势,方便人们对自己的联系人信息的管理。 2需求分析 2.1 功能需求 2.1.1个人通讯录功能需求 (1)登陆功能。用户可以直接输入用户名和密码,登陆进入通讯录的主功能界面。 (2)注册功能。其他用户可以输入自己的用户名和密码及确认密码,来实现注册成为该通讯录的使用者。 (3)查询功能。在该功能里,用户可以采用模糊查询和精确查询两种查询方式来对自己存储的联系人信息进行查询。 (4)添加功能。在该功能里,用户可以添加自己的常用联系人和分组信息。

个人通讯录管理(c语言课程设计)

安徽工业大学 《C语言课程设计》实习综合报告课题名称:个人通讯录管理系统 实习成员:王刚 学号: 109074372 专业班级: 网络工程103班 指导教师: 郑啸老师

目录 一.问题描述 (2) 二. 各功能流程图与设计思路 (3) 2.1显示模块 (3) 2.2查找模块……………………………………………4.. 2.3添加模块 (6) 2.4删除模块 (8) 2.5修改模块 (9) 三、文件的读取与保存 (11) 四、程序源代码 (12) 五、调试与运行结果 (18) 六、计算机学院课程设计评定意见 (24) 一.问题描述

设计通讯录包含以下功能: (1)通讯录的每一条信息包括姓名、单位、固定电话、移动手 机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ 等。 (2)输入功能:可以一次完成若干条信息的输入。 (3)显示功能:完成全部通讯录信息的显示。 (4)查找功能:可以按姓名等多种方式查找通讯信息。 (5)增加、删除、修改功能:完成通讯录信息的多种更新。 二.各功能流程图与设计思路 Menu菜单:

运用switch()进行操作: case'1': 显示功能,list()函数 说明:利用for循环,逐个输出已保存的内容 代码如下: //*****************显示通讯录中的内容************* void list() { printf("编号姓名电话 \t手机 \t工作单位\tEMAIL \t\tQQ\n"); for(i=0;i

JAVA课程设计--个人通讯录管理系统

JAVA课程设计 课题:个人通讯录管理系统 课程名称:java课程设计 院系:计算机科学与技术学院班级:09计本 组员: 组员: 组员: 组员: 指导教师:

一、个人通讯录管理系统概述 1、需求分析 通讯录在当今的日常生活工作中的应用是十分普及的。每个人都有可能拥有大量的通讯录资料信息,当前大家一般都用手工来记录所有的通讯录信息。随着时代的进步,人们的联系信息,联系方式变得复杂而多样化,通讯录信息的大量增加,导致管理这些信息资料就成了问题。直接操作来查找,添加,修改,删除这些信息,由于数据繁多,工作量十分巨大,查找,编辑都十分困难,而且极易出错,容易造成资料的混乱或者丢失。在各种手机,商务通内设的电话簿尽管携带方便却又存在“记录量少,界面小,浏览不方便,记录数据信息不全面”的缺点。有些人利用Excel 或Word编制通讯录,虽然数据比较全面,信息比较充分,可是查找极其不便,维护起来也麻烦。 所以运用数据库技术,在计算机中建立一个通讯录资料管理系统十分必要。使通讯录资料管理工作规范化,系统化,程序化,避免资料管理中的混乱,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改通讯录的情况。 2、系统总体规划 1.2.1 系统功能简介 个人通讯录系统。在明确了系统目标与数据库结构的前提下,设计出该系统的主要功能:系统登录、数据输入与修改、数据的删除、联系人和群组管理等。 主要功能包括: (1)可以登录和注册用户; (2)可以显示已有联系人和分组的基本信息。 (3)用户可以对自己已有的联系人和分组进行维护;如:删除和修改。 (4)用户可以随意添加自己的联系人和分组; 1.2.2 系统功能模块规划 系统的整体功能模块框架如图1.1所示:

个人通讯录管理系统java源代码

package cn pab import java.util.List; import java.util.Scanner; import cn.pab.dao.PersonDao; import cn.pab.dao.TypeDao; import https://www.360docs.net/doc/a611532806.html,erDao; import cn.pab.dao.impl.PersonDaoImpl; import cn.pab.dao.impl.TypeDaoImpl; import https://www.360docs.net/doc/a611532806.html,erDaoImpl; import cn.pab.entity.Person; import cn.pab.entity.Type; /** * 业务类 */ public class PABmanager { /** * 系统启动 */ public static void main(String[] args) { Scanner input = new Scanner(System.in); UserDao userDao = new UserDaoImpl(); TypeDao typeDao = new TypeDaoImpl(); PersonDao personDao = new PersonDaoImpl(); System.out.println( " System.out.print("\ n 欢迎使用个人通讯录管理系统**********"); 请选择操作(1. 系统登录 2. 密码修改 3. 取消):"); String in = input.next(); if ("1".equals(in)) { boolean islogin = userDao.login(); if(islogin){ System.out.println("******** *** 成功登录个人通讯录管理系统 nm\、\ ? //System.out.print(" \n 退出系统):"); }else{ System.out.println(" System.exit(-1); } }else if ("2".equals(in)) { 请选择操作(1. 类别管理 2. 联系人管理 3. 用户名或密码错误,不能登录!");

个人通讯录管理系统C语言源程序优秀版

个人通讯录管理系统C语言源程序优秀版 Last revision date: 13 December 2020.

#i n c l u d e/*头文件*/ #include //包含最常用的系统函数 #include //关于字符数组的函数定义的头文件 #include //控制台输入输出 //定义结构体 struct tongxunlu /*定义通讯录结构体变量*/ { char xingming[20]; /*定义输入名字的数组*/ char dianhua[20]; /*定义输入电话号码的数组*/ char dizhi[40]; /*定义输入地址的数组*/ } txl[100]; //默认100个数据 int n=0;//记录数据联系人数量 FILE *fp; /*定义文件*/ //程序用到的所有函数 void zhucaidan(); /*主菜单函数*/ void zengjia(); /*增加联系人函数*/ void readfile(); /*文件中读入函数*/ void writefile(); /*文件中写入函数*/ void xiugai(); /*修改联系人函数*/ void xiugai_xingming(); /*姓名修改*/ void xiugai_dianhua(); /*电话号码修改*/ void chazhao(); /*查找联系人函数*/ void chazhao_xingming(); /*按姓名查找*/ void chazhao_dianhua(); /*按号码查找*/ void shanchu(); /*删除联系人函数*/ void shanchu_quanbu(); /*全部删除*/ void shanchu_dange(); /*单个删除*/ void xianshi(); /*号码显示*/ //程序主函数模块六 void main() /*主函数main*/ { readfile(); /*读入文件*/ while(1) /* 循环(永远进行)*/ { zhucaidan(); /*调用主菜单函数*/ } } //读取文件函数部分开始模块七 void readfile() { if((fp=fopen("c:\\通讯录.txt","r"))==NULL) /*以只读方式打开判定文件是否为空*/ { printf("\n\t\t\t 通讯录文件不存在"); /*判断结论*/

个人通讯录管理系统设计说明书

个人通讯录管理系统系统设计说明书 班级 07软工A2 组号第 1 组 拟制人张超 审核人郁盈盈 2010年10月25日

目录 1 引言 (1) 1.1编写目的 (1) 1.2项目背景 (1) 1.3预期读者 (1) 1.4参考文献 (1) 2任务概述 (2) 2.1目标 (2) 2.2运行环境 (2) 2.3需求概述 (2) 2.4条件与限制 (3) 3总体设计 (3) 3.1功能模块分析 (3) 3.1.1功能分配 (3) 3.1.2模块设计 (5) 3.2总体结构及模块结构 (5) 4数据结构设计 (8) 4.1逻辑模型设计 (8) 4.2物理模型设计 (9) 4.3数据库设计 (9) 5接口设计 (10) 5.1外部接口设计 (10) 5.1.1界面设计及说明 (10) 5.1.2软件接口 (17) 5.1.3硬件接口 (17) 5.2内部接口设计 (18) 6运行设计 (18) 6.1运行模块的组合 (18) 6.2运行控制 (18) 6.3运行时间 (18) 7出错处理设计 (18) 7.1出错输出信息 (18) 7.2出错处理对策 (18) 8安全保密设计 (19) 9维护设计 (19)

1 引言 1.1编写目的 本说明是个人通讯录管理系统软件产品的总体设计和实现说明,记录了系统整体实现上技术层面上的考虑,并且以需求说明作为依据,同时该文档将作为产品实现、特性要求和控制的依据。 软件开发小组的每一位参与开发成员应该阅读本说明,以清楚产品技术方面和实现策略,本手册将进行技术评审和技术的可行性检查,同时个人通讯录管理系统软件的开发途径和应用方法,以求在最短的时间高效开发个人通讯录管理系统。 1.2项目背景 本项目的名称:个人通讯录管理系统 本项目的任务提出者及开发者是07软工A2第一小组 用户是一般个人。 本产品是针对为能本地化无网络的获得通讯录信息的需求而设计的,主要功能包括,对联系人的信息管理,实现各种搜索方式及排序,实现联系人分组及组管理等功能。 1.3预期读者 本说明书的预期读者是项目的开发人员,测试人员和维护人员。 1.4参考文献 [1]. 《https://www.360docs.net/doc/a611532806.html, 2.0网络编程从基础到实践》马颖华苏贵洋袁艺苏桂涛编著 [2]. 《UML基础与Rose建模教程》蔡敏徐惠惠黄炳强编著 [3]. 《C#数据库系统开发完全手册》明日科技张跃延许文武王小科编著

通讯录管理系统设计说明书

通讯录管理系统设计说明书 系统概述: 随着毕业的来临,我们就将面临分离。为了能在毕业后,能够方便联系我们在大学其间的同学朋友,通讯录就是一个可以帮我们方便查找同学朋友的工具。 随着计算机的普及,人们的生活摆脱了传统式的记事本、电话簿,越来越多的靠计算机来帮助人们记住这些事情,极其简便。这就需要有一个使用的通讯录管理系统,用户可以方便的通过自己电脑的通讯录管理系统,来随时查阅自己所需要的信息,而不必再大费周折去翻开那繁琐的记事本。 通讯录管理系统是一个专门针对储存用户联系方式以及一些简单个人信息的实用管理系统,它方便了用户对众多客户、朋友、同事等个人信息的储存和快速查阅的功能,大大减少了查找过程的时间。 关键字:插入,删除,查找,输出。 需求分析: 调查用户需求: 随着同学们的即将毕业,蹋出社会,交际难免地逐渐扩大,与外界联系将更为广泛和密切,传统的手工通讯录、地址簿已经难以满足快节奏、高效率的现代生活的需求。经常发生要在几十甚至上百张名片中找出某一张名片的情况,若由手工完成效率十分低。当交际扩大后,传统的手工通讯录非常不方便,不易查询、修改、存放,不易保密,容易遗失。 由计算机带来管理庞大而繁杂的通讯录是非常合适的,不仅查询和修改方便,并且效率高,速度快,完全能够满足现代化交际活动的要求,同时也更方便同学们联系交往。 本系统专门用于个人通讯信息管理的小型应用软件,主要提供个人通讯信息的登记、修改、浏览、查询和打印等功能。

1.用户的主要信息需求: ①对个人通讯信息资料进行登记、修改、浏览。 ②对个人通讯信息资料进行按姓名和学号查询。 ③对个人通讯信息资料进行打印输出。 系统功能设计与分析: 1.功能模块图 2.功能设计 (1)新建通讯录功能 增加一个新的记录,并保存通讯录; (2)搜索通讯录功能

个人通讯录管理软件功能设计说明书

个人通讯录管理软件功能 设计说明书 一.系统名称 个人通讯录管理 二.系统分析 2.1系统需求分析 个人通讯录模型可以参考流行的腾讯QQ聊天软件,同时结合手机里面的通讯录进行设计。在此阶段初步确定系统的要实现的基本功能即联系人和分组的增删改、联系人信息的多种查询以及数据库设计构型即采用哪种数据库、大致由哪些基本表组成。 2.2概念结构设计 采用E—R图的设计方法进行数据库的概念结构 由图可得:数据库主要是联系人表,表的基本结构如下: 联系人表(、职务、职称、工作单位、通讯地址、邮政编码、单

位、住宅、分编特征) 联系人表中,主键是分编特征; 2.3逻辑结构设计 在完成以上分析后,要对数据库进行表结构的设计,这里仅以表字段数据结构的为重点。 各表列出对应子段名,各字段长度,是否Null、默认值见其下图,根据数据库基础知识分析,各表设计都达到了第三式,符合数据库的设计规。 联系人表:,xm;职务,zw;职称,zc;工作单位,gzdw;通讯地址,xxdz;邮政编码,yzbm;单位,dwdh;住宅,zzdh;分编特征,fbtz; 表的索引,主键,外键关系约束如下: 三.系统主要功能及界面设计 3.1功能简介: 1、该软件应具有对通讯录信息的增加、删除、保存、查询、排序、

打印等功能。 2、以单文档界面和多文档界面两种形式实现。 3、该软件应包括数据窗口技术、用回车键实现TAB键功能、多条件查询、多文档界面的实现、窗口之间的参数传递、结构的应用、图片的使用等主要技术 3.1.2信息查询模块: 1该功能模块包含查找方式是:按照查找,按照分编特征查找,按照地址查找。只要输入,分编特征,地址,就可以立马找到联系人的信息。 2查找的优势:在查找的下方可以清晰的看到查找的联系人的信息在通讯录中的具体位置,包括其所在的行和列。 3.1.3.系统管理模块:该功能模块包含: 1新增联系人信息,包括,职务,职称,工作单位,通讯地址,邮政编码等。 2打印:打印联系人相关信息包括,职务,职称,工作单位,通讯地址,邮政编码等。 3删除:删除联系人相关信息包括,职务,职称,工作单位,通讯地址,邮政编码等。 4设置:设置联系人信息即更改其信息包括,职务,职称,工作单位,通讯地址,邮政编码等。 5保存通讯录信息包括,职务,职称,工作单位,通讯地址,邮政编码等。

个人通讯录管理系统,java源代码

package cn.pab.manager; import java.util.List; import java.util.Scanner; import cn.pab.dao.PersonDao; import cn.pab.dao.TypeDao; import https://www.360docs.net/doc/a611532806.html,erDao; import cn.pab.dao.impl.PersonDaoImpl; import cn.pab.dao.impl.TypeDaoImpl; import https://www.360docs.net/doc/a611532806.html,erDaoImpl; import cn.pab.entity.Person; import cn.pab.entity.Type; /** * 业务类 */ public class PABmanager { /** * 系统启动 */ public static void main(String[] args) { Scanner input = new Scanner(System.in); UserDao userDao = new UserDaoImpl(); TypeDao typeDao = new TypeDaoImpl(); PersonDao personDao = new PersonDaoImpl(); System.out.println("***********欢迎使用个人通讯录管理系统**********"); System.out.print("\n请选择操作(1.系统登录 2.密码修改 3.取消):"); String in = input.next(); if ("1".equals(in)) { boolean islogin = userDao.login(); if(islogin){ System.out.println("***********成功登录个人通讯录管理系统**********"); //System.out.print("\n请选择操作(1.类别管理 2.联系人管理 3.退出系统):"); }else{ System.out.println("用户名或密码错误,不能登录!"); System.exit(-1); } }else if ("2".equals(in)) { boolean modiFlag = userDao.modify();

个人通讯录管理系统的设计与实现

科技信息 SCIENCE &TECHNOLOGY INFORMATION 2010年第11期个人通讯录管理系统的设计与实现 马达灵马文婷 (集宁师范学院内蒙古乌兰察布012000) 【摘要】通讯录是当前每个人不可缺少的信息系统,利用vfp6.0制作个人通讯录,从根本上改变纸介质基础通讯录的弊端,从而提高信息管理效率。在对系统进行分析和设计的基础上,创建各种项目组件,连编成通讯录应用系统。 【关键词】通讯录;设计;制作 0前言 通讯录、联系本是每个人不可缺少的工具,目前以纸介质的通讯 录最为普遍。手工的信息管理存在许多弊端,如信息容易丢失、查找费 时、存储量有限等。随着科技的发展与人民生活水平的提高,计算机进 入了千家万户。作为计算机应用的一部分,使用计算机对通讯录进行 管理,具有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可 靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地 提高通讯录管理的效率。因此,开发一套通讯录信息管理软件是很有 必要的,并且意义重大。 Visual FoxPro 是一个在我国有着庞大用户群的数据库管理系统 软件,它将过程化程序设计与面向对象程序设计结合在一起,帮助用 户创建出功能强大,灵活多变的应用程序。VFP 还支持对象的链接与 嵌入和动态数据变换技术,丰富了设计效果,界面令人耳目一新。 利用VFP 6.0制作个人通讯录可以便于用户添加、删除和查找通 讯信息,使信息管理工作系统化、规范化、自动化,从而提高通讯录管 理效率。 1系统的设计 系统的设计决定了系统的开发方向和总体目标。因此,它是系统 开发的关键步骤之一。个人通讯录是以处理为中心的数据库应用系 统,具体设计过程分为需求分析、数据库设计、应用程序设计等流程。 1.1需求分析系统应满足个人通讯工作需要,并达到操作过程直 观、方便、实用、安全的要求;它采用模块化程序设计方法,既便于系统 功能的各种组合和修改,又便于进行补充、维护。系统应具备数据库维 护功能,及时根据用户需求进行数据的添加、删除、修改,备份等操作。 同时可在Windows xp\Windows NT 或Windows2000环境下独立运行。 1.2数据库设计在VFP 应用程序开发中,首先需要考虑数据库中 包括什么表,以及表的结构。个人通讯录中只需要一个通讯表,包括姓 名,私人电话,办公电话,电子邮箱,qq 号,联系地址,邮编等7个字 段。为了安全保密,可设置用户授权表,包括用户名和密码字段。 1.3应用程序设计数据库设计奠定了数据源的基础,要自如使用 需设计以下功能,包括:系统功能(浏览通讯录,关闭通讯录,打印通讯 录);编辑功能(增加记录,删除记录,恢复记录);查询功能(查询记录, 查询私人电话,查询办公电话,查看QQ ,查询通讯地址)。这些功能需 设计菜单程序。同时设置程序运行方案:输入安全保护密码,进入操作 窗口,通过下拉菜单完成指定任务。 2系统的实现 2.1系统实现的软硬件硬件系统:奔腾100以上CPU 、64M 以上内 存、1G 以上硬盘、光驱。 软件系统:Windows 9x 或更高版本、Visual Foxpro6.0中文版。 2.2创建数据库与数据表数据库与数据表是应用系统的数据资 料。在项目下创建数据库,命名为通讯录管理。在该库中创建两个表, 分别是个人通讯录.dbf 和用户授权表.dbf ,结构如上所述。输入几条示 范记录。为了保密,在用户授权表的表设计器中对用户名和密码字段 设置掩码。 2.3创建表单、报表对于表单来说可分为两部分考虑:一是显示数 据用的“表单;二是作为应用程序操作界面的“表单”,它们的用途不 同,但制作方法确相差不大。 在项目中新建表单,在表单设计器中首先设置数据环境,选取数 据源授权用户表,用表中的记录创建表单控件,方法是从数据环境设 计器中将用户名、密码字段分别拖入表单中,选定“密码”文本框,从属性对话框中将PassWordChr 属性设置*(星号)。利用表单控件中的命令按钮制作“确定”按钮,并且制定单击按钮后的任务,即在“过程代码框”中输入相应代码。显示数据的表单分别有个人通讯录.scx ,私人电话.scx ,办公电话.scx ,QQ.scx ,联系地址.scx 等。以上表单都是基于数据源“个人通讯录.dbf ”,只是在控件设置上有区别。个人通讯录.scx 选取表中的所有字段,私人电话.scx 选取姓名、私人电话字段,其它表单类同。报表是使用数据记录的另一种重要形式,除了具有浏览数据记录的功能外,还能控制打印输出数据记录的格式。在本系统中基于个人通讯录.dbf 制作一个报表,显示表中所有字段和记录。所以可利用报表向导制作,命名为个人通讯录.frx 。2.4制定应用程序的操作菜单个人通讯录应用系统的功能是由菜单来实现的,它的结构如设计所述。各菜单可在菜单设计器中制作。系统功能的下拉菜单项分别有以下命令实现:DO FORM 个人通讯录(浏览通讯录),个人通讯录.RELEASE (关闭通讯录),REPOT FORM 个人通讯录(打印通讯录);编辑功能的命令语句分别是DO FORM 个人通讯录(增加记录),DELETE (删除记录),RECALL (恢复记录);查询功能实现的命令分别是DO FORM 个人通讯录(查询记录),DO FORM 私人电话(查询私人电话),DO FORM 办公电话(查询办公电话),DO FORM QQ (查看QQ ),DO FORM 通讯地址(查询通讯地址)。2.5制定应用程序的主程序主程序包括初始化设置,制定操作窗口的显示形式,制定操作窗口尺寸与标题,设置程序文件位置与入口等内容。这里不给出具体代码。2.6调试与编译程序为了确保程序的正常运行,调试工作不可忽视,利用调试器发现错误并排除。调试完成后就可以进行程序的编译。在项目管理器中单击“连编”按钮,进入“连编选项”对话框。选择“连编可执行文件”,应用程序可以在独立于VFP 环境运行。3小结个人通讯录管理系统设置了程序入口界面,通过用户名和密码验证方可使用该系统。提高系统的安全性和保密性。个人通讯录管理系统以个人通讯录表文件作为数据源,各条通讯记录可以进行修改、维护。在此基础上建立的各种表单文件是用户的操作界面,能直观的浏览记录,通过控制按钮更方便控制和使用数据记录。应用程序的菜单以调用各种表单来实现,为用户提供了一个结构化访问数据库的途径。【参考文献】[1]王顺利,等.数据库应用技术.呼和浩特:内蒙古出版社,2007.[2]杨克玉,等.Visual FoxPro 6.0程序设计.合肥:安徽大学出版社,2002.[3]许向荣,等.Visual FoxPro 6.0项目案例导航.北京:科学出版社,2002.[责任编辑:翟成梁]●科○IT 论坛○490

Java个人通讯录管理系统(主文档)

摘要 这个基于java编写的个人通讯录管理系统含有添加、删除、查找等基本功能。在程序中完成了与数据库的通信,并同样可以对数据库进行添加、查找、删除等功能。 关键词:个人通讯录管理系统、添加、删除、查找、数据库

目录 摘要 (1) 1 绪论 (3) 1.1 设计目的 (3) 1.2 设计内容 (3) 2 程序需求分析 (3) 3 算法分析 (4) 3.1 程序总体设计思想 (4) 3.2 程序设计总体框图 (5) 3.3 程序详细设计 (6) 4 调试过程 (8) 5 体会 (15) 6 参考文献 (15) 7 成员评分......................................................................................................................... 错误!未定义书签。附录(源程序)见另一文档《Java个人通讯录管理系统附录(源程序)》 . (15)

1 绪论 1.1 设计目的 本课程设计是java语言学习中很重要的实践性环节之一,是在学习完java课程后进行的一次全面的综合练习旨在巩固和加深我们对java语言的基本知识的理解和掌握,掌握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,掌握书写程序设计说明文档的能力,提高运用java语言解决实际问题的能力。 1.2 设计内容 在设计一个完整的系统中,我从系统的管理员登录界面开始做,另外依据相关要求,对系统增加了数据库支持(Microsoft Access做的数据库),还有对数据库里的数据进行增加、删除、显示所有记录、查询记录、导出备份数据库文件。另外为了界面美观,增加了系统主界面背景界面图片的支持。为了保证数据库的安全,在系统中设立了管理员权限,即只有被允许的用户才可以进入该系统。 2 程序需求分析 设计一个通讯录管理软件,要求如下: 增加记录、删除记录、显示所有记录、查询记录、文件备份、退出。通讯录记录信息包括:姓名,电话,email等。 (1)通讯录的每一条信息包括姓名,单位,电话(可用数组或数据库); (2)输入功能:可以一次完成若干条信息的输入; (3)显示功能:完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示); (4)查找功能:完成按姓名查找通讯信息; (5)删除功能:完成按姓名删除通讯信息; (6)应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观。

java课程教学设计(通讯录管理方案系统)

合肥学院 计算机科学与技术系 课程设计报告 2013~2014学年第二学期 课程面向对象课程设计 课程设计名称通讯录程序 学生姓名XXX 学号 专业班级XXXXX 指导教师XXX 20 年月

目录 一、设计题目 (1) 二、设计要求 (1) 三、总体设计 (1) 3.1系统功能框架 (1) 3.2系统功能说明 (3) 四、详细设计 (3) 1.数据结构设计 (3) 2.系统模块设计 (10) 五、运行结果 (13) 一.设计题目 随着社会的进步与发展,通讯越来越密切。希望能通过对java课程设计的学习和掌握来编写一个通讯录管理系统。 二.设计要求 (1)只能使用Java语言,采用面向对象方法进行设计,要求源程序要有适当的注释,使程序容易阅读。 (2)程序必须与数据库进行通信。

(3)系统必须是图形用户界面的形式并连接数据库 三. 总体设计 3.1 3.2 系统功能说明 (1)具有新用户注册功能。 (2)具有注册用户登录功能。 (3)具有数据的录入功能。 (4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。(5)具有按条件删除数据功能。

(6)具有统计功能 4. 详细设计 4.1数据结构设计(java程序设计) //登录系统 package com.ibm.etp.addressbook.action; import java.util.HashMap; import java.util.List; import https://www.360docs.net/doc/a611532806.html,er; import com.ibm.etp.addressbook.service.LoginService; import com.opensymphony.xwork2.ActionSupport; public class LoginAction extends ActionSupport { private static final long serialVersionUID = 1L; public String username; public String password; private String message; @Override public String execute() throws Exception { HashMap result = new HashMap(); List list = null; System.out.println(username); if(username == null || username.trim().length() == 0) { result.put("success", false); result.put("msg", "https://www.360docs.net/doc/a611532806.html,ername.empty"); } else if(password == null || password.trim().length() == 0) { result.put("success", false); result.put("msg", "login.password.empty"); } else { LoginService ls = new LoginService(); list = ls.checkLogin(username); } if(list == null) { result.put("success", false); result.put("msg", "https://www.360docs.net/doc/a611532806.html,er.not.exist"); } else if(list.get(0).getPassword().equals(password)) { result.put("success", true); result.put("msg", "login.success"); } else {

相关文档
最新文档