java个人通讯录课程设计报告.docx
- 文档编号:25744966
- 上传时间:2023-06-12
- 格式:DOCX
- 页数:16
- 大小:86.99KB
java个人通讯录课程设计报告.docx
《java个人通讯录课程设计报告.docx》由会员分享,可在线阅读,更多相关《java个人通讯录课程设计报告.docx(16页珍藏版)》请在冰豆网上搜索。
java个人通讯录课程设计报告
CompanyDocumentnumber:
WTUT-WT88Y-W8BBGB-BWYTT-19998
java个人通讯录课程设计报告
别
山东交通学院
面向对象课程设计
个人通信录管理信息系统的设计与实现
院(系)别信息科学与电气工程学院
班级
学号
姓名
指导教师
时间2014-08-25—2014-09-5
课程设计任务书
题目个人通讯录管理系统
院(部)信息科学与电气工程学院
专业计算机科学与技术
班级
学生姓名
学号
08月25日至09月5日共2周
指导教师(签字)
院长(签字)
年月日
一、设计内容及要求
目的:
通过本题目的设计,加深对面向对象程序设计技术的理解,掌握利用数据库编写小型程序的基本过程和方法。
任务:
1)利用面向对象编程技术,完成个人信息的存储管理;
2)选择系统开发平台(JAVA或.NET)和软件架构(C/S、单机版);
3)要求系统能够对联系人的系统进行录入、查询、编辑、导入和导出等。
二、设计原始资料
三、设计完成后提交的文件和图表
2.图纸部分:
程序流程图
四、进程安排
8月25—8月26,程序流程图,程序设计总框图
8月27—8月28,数据库连接,删除部分代码
8月29,登陆界面代码
9月1—9月4添加、修改、查找、导出数据库部分代码
9月5号答辩。
五、主要参考资料
1《java语言及其应用》董佑平,夏冰冰清华大学出版社2012
成绩评定表
作品成绩
报告成绩
口试(答辩)成绩
总评成绩
课程设计概述
本课程设计是java语言学习中很重要的实践性环节之一,是在学习完java课程后进行的一次全面的综合练习旨在巩固和加深我们对java语言的基本知识的理解和掌握,掌握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,掌握书写程序设计说明文档的能力,提高运用java语言解决实际问题的能力
2本次课程设计主要目的及要求:
设计一个通讯录管理软件,要求如下:
增加记录、删除记录、显示所有记录、查询记录、文件备份、退出。
通讯录记录信息包括:
姓名,电话,email等。
(1)通讯录的每一条信息包括姓名,单位,电话!
(可用数组或数据库);
(2)输入功能:
可以一次完成若干条信息的输入;
(3)显示功能:
完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示);
(4)查找功能:
完成按姓名查找通讯信息;
(5)删除功能:
完成按姓名删除通讯信息;
(6)应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!
程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。
3.设计思想:
个人通讯录件的功能模块有:
(1)提供登陆界面,方便用户进入,满足需求;
(2)添加:
可以添加通讯录记录,依次输入姓名、性别、出生日期、移动电话、固定电话、MSN/QQ、公司地址、E-Mail地址、家庭住址、组别、备注后,会提示是否继续添加;
(3)显示:
可以以表格形式输出所有通讯录里的记录;
(4)查询:
可以用姓名查询;
(5)修改:
输入欲修改的那个人的名字后,再依次输入姓名、性别、出生日期、移动电话、固定电话、MSN/QQ、公司地址、E-Mail地址、家庭住址、组别、备注即可完成修改;
(6)删除:
可以直接删除多余的通讯录记录;
(7)帮助:
可以在帮助里面修改用户密码;
(8)导出数据库:
可以将数据库以文本txt格式导出。
程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。
总体设计流程图
图2-1 总体设计流程
1程序测试
登陆界面
图4-1登陆界面
相关代码:
publicLoginframe(){
login=newJDialog,"个人通讯录登入界面",true);
(DO_NOTHING_ON_CLOSE);
(null);
(newGridLayout(3,0));
username=newTextField(10);
password=newTextField(10);
("");
("");
certain=newJButton("certain");
cancel=newJButton("cancel");
(newLoginIn());
(newLoginIn());
JLabellb1=newJLabel("用户名:
");
JLabellb2=newJLabel("密码:
");
JPanelp1=newJPanel();
JPanelp2=newJPanel();
JPanelp3=newJPanel();
(lb1);
(username);
(lb2);
(password);
('*');
(certain);
(cancel);
(300,200);
(p1);
(p2);
(p3);
(true);
();
}
publicstaticvoidmain(String[]args){
newLoginframe();
}
}
点击“certain”,登录成功,点击确定,进入个人通讯录管理系统,
个人通讯录管理系统界面
相关代码:
publicLoginframe(){
login=newJDialog,"个人通讯录登入界面",true);
(DO_NOTHING_ON_CLOSE);
(null);
(newGridLayout(3,0));
username=newTextField(10);
password=newTextField(10);
("");
("");
certain=newJButton("certain");
cancel=newJButton("cancel");
(newLoginIn());
(newLoginIn());
JLabellb1=newJLabel("用户名:
");
JLabellb2=newJLabel("密码:
");
JPanelp1=newJPanel();
JPanelp2=newJPanel();
JPanelp3=newJPanel();
(lb1);
(username);
(lb2);
(password);
('*');
(certain);
(cancel);
(300,200);
(p1);
(p2);
(p3);
(true);
();
}
publicstaticvoidmain(String[]args){
newLoginframe();
}
}
2.点击左上角的“文件—导出数据库”,
publicFdkeep(){
fdsave=newJDialog,"导出数据",true);
(null);
(newGridLayout(2,0));
JLabellabelSave=newJLabel("输入保存的完整的路径:
");
JLabellabele1=newJLabel("例如:
D:
"+"\\"+"");
saveok=newJButton("save");
savegp=newJButton("giveup");
lbSave=newTextField(10);
(newFileExportDBAction());
(newFileExportDBAction());
JPanelp9=newJPanel();
JPanelp10=newJPanel();
(labelSave);
(lbSave);
(labele1);
(saveok);
(savegp);
(p9);
(p10);
();
(true);
}
}
添加界面
点击“保存”将新加的信息加入数据库,系统会告知“添加成功”。
相关代码:
publicclassPanelframeactionimplementsActionListener{
Stringsql1;
Connectioncon;
Statementstmt;
publicvoidactionPerformed(ActionEvente){
if(((JButton)()).getText().equals("保存")){
Stringnname,sx,bday,mphone,phone,compay,email,home,group,note,msnqq;
nname=sx=bday=+"-"
++"-"
+mphone=phone=compay=email=home=group=note=msnqq=try{
con=newConnect().getConnection();
stmt=();
sql1="INSERTINTOaddress"+"VALUES(\'"+nname+"\',\'"
+sx+"\',"+bday+",\'"+mphone+"\',\'"+phone
+"\',\'"+compay+"\',\'"+email+"\',\'"+home
+"\',\'"+group+"\',\'"+note+"\',\'"+msnqq
+"\')";
(sql1);
(null,"添加成功");
Image());
();
();
}catch(Exceptionex){
();
}
}
if(((JButton)()).getText().equals("取消")){
Image());
}
if(((JButton)()).getText().equals("退出查询界面")){
Image());
}
if(((JButton)()).getText().equals("保存修改")){
Stringsx,bday,mphone,phone,compay,email,home,group,note,msnqq;
sx=bday=+"-"
++"-"
+mphone=phone=compay=email=home=group=note=msnqq=try{
con=newConnect().getConnection();
stmt=();
sql1="updateaddressset性别=\'"+sx+"\',生日="+bday
+",移动电话=\'"+mphone+"\',固定电话=\'"+phone
+"\'"+",公司地址=\'"+compay+"\',EMail=\'"
+email+"\',家庭地址=\'"+home+"\',组别=\'"
+group+"\',备注=\'"+note+"\',MSNQQ=\'"
+msnqq+"\'where姓名=\'"++"\'";
intaa=(sql1);
();
if(aa>0){
(null,"修改成功");
Image());
}else{
(null,"修改失败");
}
();
();
}catch(Exceptionex){
();
}
}
}
}
选择“编辑—删除”,按照提示输入删除的用户名
点击“删除”后,则系统会提示“删除成功”
相关代码:
publicclassdeleteFrameactionimplementsActionListener{
Stringsql;
Connectioncon;
Statementstmt;
publicvoidactionPerformed(ActionEvente){
删除界面不可见
if(((JButton)()).getText().equals("删除")){
Stringnn=try{
con=newConnect().getConnection();
stmt=();
sql="deletefromaddresswhere姓名="+"\'"+()+"\'";
(sql);
(null,"删除成功");
();
();etText().equals("放弃")){
}
}
}
点击“文件—按姓名查找”,输入所需要查找的用户名
图4-13查找记录
点击“查询”,系统会对数据库进行查找,并提示“查找结束”
相关代码:
publicQueryFrame(){
findFrame=newJDialog,"查找记录",true);etText().equals("显示查询结果")){
Stringnm,sx,mp,ph,em,ca,ha,nb,gp,lbMQ,all;
booleanbdr;
Datebd;
try{
con=newConnect().getConnection();
stmt=();
sql="SELECT*FROMaddress";
ResultSetws=(sql);
while()){
nm=
(1);
sx=
(2);
bd=(3);
mp=(4);
ph=(5);
ca=(6);
em=(7);
ha=(8);
gp=(9);
nb=(10);
lbMQ=(11);
all="姓名"+nm+"性别"+sx+"生日"+bd
+"移动电话"+mp+"固定电话"+ph+"MSN/QQ"
+lbMQ+"公司地址"+ca+"EMail"+em
+"家庭地址"+ha+"组别"+gp+"备注"+nb
+"\n";
}
();
();
}catch(Exceptionex)
{
"Exception:
"+());
}
}
if(((JButton)()).getText().equals("退出全部查询")){
"");
}
}
}
数据库建表:
密码修改功能无法实现
至此,个人通讯录管理系统的调试运行全部完成。
设计体会及今后的改进意见
在此次Java开发过程中,有很多东西值得我们思考并总结。
开发过程大体可分为以下几个步骤:
思考总体设计方案:
总体结构和模块外部设计,功能分配。
思考要实现整个程序大体需要的几个模块
画出总体设计方案流程图:
用流程图的形式展现你的基本编程思想。
最后修饰:
程序可以正确运行之后,再不影响程序功能的情况下,运用各种辅助性符号,使界面更加美观漂亮,操作更人性化.增强程序的新意与可行性。
通过这次课程设计,使我们更加熟悉的掌握了Java语言的运用。
帮助我们熟悉了更多Java语言的功能,提高了我们的动手能力,学到了许多解决实际问题的宝贵经验.同时也挖掘出了我们潜在的能力,使我们对自己更有自信,对编程也更有兴趣。
我相信,只要努力、勤奋、坚持不懈,就没有什么做不到的事,不能还没开始就退缩,要勇于拼搏,敢于创新。
这次的程序实设计实验是对我们进入大学以来学习程序设计语言结果的一次大检验。
自己动手,自己发现和解决问题。
发现了自己的许多不足。
平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行,解决其中大部分问题,当然还存在一些问题没有解决。
我相信在以后的学习能够解决好它们。
但是,收获还是不小的,我不仅对Java的操作有了进一步的掌握,还了解到了程序设计的书写风格。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 个人 通讯录 课程设计 报告