JAVA课程设计通讯录管理软件.docx

上传人:b****9 文档编号:24974963 上传时间:2023-06-03 格式:DOCX 页数:21 大小:167.81KB
下载 相关 举报
JAVA课程设计通讯录管理软件.docx_第1页
第1页 / 共21页
JAVA课程设计通讯录管理软件.docx_第2页
第2页 / 共21页
JAVA课程设计通讯录管理软件.docx_第3页
第3页 / 共21页
JAVA课程设计通讯录管理软件.docx_第4页
第4页 / 共21页
JAVA课程设计通讯录管理软件.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

JAVA课程设计通讯录管理软件.docx

《JAVA课程设计通讯录管理软件.docx》由会员分享,可在线阅读,更多相关《JAVA课程设计通讯录管理软件.docx(21页珍藏版)》请在冰豆网上搜索。

JAVA课程设计通讯录管理软件.docx

JAVA课程设计通讯录管理软件

长春大学

课程设计任务书

 

题目名称通讯录管理软件

院(系)计算机科学技术学院

课程名称Java程序设计

班级网络10406

学生姓名

指导教师

起止日期

 

课程设计任务书

技术参数)及要求

题目名称(包括主要

题目:

通讯录管理软件

要求:

(1)只能使用Java语言,采用面向对象方法进行设计,要求源程序要有适当的注释,使程序容易阅读。

(2)程序必须与数据库进行通信。

(3)系统必须是图形用户界面的形式并连接数据库。

(4)学生可根据自身情况酌情增加新功能(视情况可另外加分)。

设计内容及工作量

(1)具有新用户注册功能。

(2)具有注册用户登录功能。

(3)具有数据的录入功能。

(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。

(5)具有按条件删除数据功能。

(6)具有统计功能

主要参考资料

1)《Java语法及网络应用设计》,徐迎晓编著,清华大学出版社

2)《 ThinkinginJAVA(ThirdEdition)》,BruceEckel,机械工业出版社

3)《Java2核心技术(第6版)卷I:

基础知识》,CayS.Horstmann,GaryCornell,程峰等译,机械工业出版社

4)《Java2参考大全(第四版)》,[美]HerbertSchildt著,张玉清、吴浦峰、尚勇等译,清华大学出版社

进度计划表

阶段

日期

计划完成工作量

指导教师检查意见

备注

第1天

按要求设计数据库、页面(窗口、命令行菜单)设计

第2天

登录、注册和录入信息

第3天

按条件删除信息、

查询信息

第4天

程序调试、系统完善及撰写文档

第5天

答辩

设计总结:

考核成绩及评语

 

指导教师签字年月日

教研室意见

 

教研室主任签字年月日

长春大学

课程设计说明书

 

题目名称通讯录管理系统

院(系)计算机科学技术学院

专业(班级)网络10406

学生姓名

指导教师

起止日期

 

一、设计目的…………………………………………………………………2

二、功能介绍…………………………………………………………………2

三、程序流程…………………………………………………………………3

四、设计步骤…………………………………………………………………3

1.数据库表的设计………………………………………………………3

2.详细设计………………………………………………………………4

五、设计总结…………………………………………………………………7

六、程序清单…………………………………………………………………8

七、参考文献…………………………………………………………………13

一、设计目的

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

通过课程设计,提高我们理论联系实际解决实际问题的能力;也使提高对基于面向对象的理论,在进行系统设计过程中的诸多具体问题有感性的认识和深入的理解。

随着人们生活水平的提高,通讯工具在平常百姓家中已经是非常常见。

要记住所有的联系方式似乎有些困难,所以我们希望设计一个通讯录系统,记录所有的联系方式,并且能方便的查找,增加和删除,方便大家记录联系人。

 

二、功能介绍

(1)具有新用户注册功能。

(2)具有注册用户登录功能。

(3)具有数据的录入功能。

(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。

(5)具有按条件删除数据功能。

(6)具有统计功能

三、程序流程

注册新用户

登录

通讯录管理系统

用户数据增添功能

用户数据查询功能

用户数据删除功能

用户数据统计功能

全部查询

按条查询

退出系统

录入数据库

4.1数据库表的设计

(1)普通用户数据表的设计,如表1

表1普通用户数据表

列名

数据类型

长度

是否为空

username(key)

varchar

20

password

char

10

 

(2)记录信息数据表,如表2

表2记录信息数据表

列名

数据类型

长度

是否为空

name(key)

varchar

20

sex

char

20

birthday

datatime

8

Email

char

20

tel

char

8

4.2详细设计

1、登录功能界面

图1-1登陆功能展示图

LoginAction类,封装的信息由密码和账户名,以及登录失败时抛出的异常方法。

Stringexecute()函数继承了Exception类,如果登录密码不匹配,则会抛出异常,提示Error登录失败。

在登录模块中有管理员用户和普通用户,管理员可以对系统中的信息添加,修改,删除等功能,普通用户只进行查找操作。

 

2、添加功能界面

图2-1添加功能展示图

LoginAction类继承ActionSuporrt类,封装有name,sex,birthday,email,tel属性,封装有成员函数set_name(),set_sex(),set_birthday(),set_email(),set_tel()用来添加各个属性值,提示操作失败信息用Stringexecute()函数抛出异常。

3、删除功能界面

图3-1删除功能展示图

 

DeleAction类继承ActionSuporrt类,get_name()方法用于得到所要删除的信息的主码。

封装的数据成员包括name,封装有isSuccess()函数,用于判断删除成功与否。

删除模块中,用户可以根据某一关键字或多个关键字进行删除,删除信息后会自动提示。

 

4、查询功能界面

图4-1查询功能展示图

FindAction类继承ActionSuporrt类的属性及方法,setInput()方法将输入的信息传递给FindAction类内的相应属性,getInput()方法用于返回输入值,封装的成员函数包括getlist()用于返回查询到的元组列表。

图5显示可以通过姓名,性别,出生日期,email地址对联系人进行查询。

5、统计功能界面

图5-1查询全部功能展示图

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

然后点击“显示查询结果”,即可显示出全部查询结果。

如图4-19:

图5-2查询全部功能展示图

五、设计总结

通过这次课程设计我加深了对于java语言应用与实践之间的连接,能更好的使用java语言!

在小组成员的分工配合下,我们完成了题目。

只有通过合作,才能更高效率的完成任务。

实践非常的重要。

很多东西在理论层面是行的通的,但到实际中就行不通了。

所以要多实践,在不断的修改调试过程中巩固知识。

六、程序清单

//登录系统

packagecom.ibm.etp.addressbook.action;

importjava.util.HashMap;

importjava.util.List;

importcom.ibm.etp.addressbook.pojo.User;

importcom.ibm.etp.addressbook.service.LoginService;

importcom.opensymphony.xwork2.ActionSupport;

publicclassLoginActionextendsActionSupport{

privatestaticfinallongserialVersionUID=1L;

publicStringusername;

publicStringpassword;

privateStringmessage;

@Override

publicStringexecute()throwsException{

HashMapresult=newHashMap();

Listlist=null;

System.out.println(username);

if(username==null||username.trim().length()==0){

result.put("success",false);

result.put("msg","login.username.empty");

}elseif(password==null||password.trim().length()==0){

result.put("success",false);

result.put("msg","login.password.empty");

}else{

LoginServicels=newLoginService();

list=ls.checkLogin(username);

}

if(list==null){

result.put("success",false);

result.put("msg","error.user.not.exist");

}elseif(list.get(0).getPassword().equals(password)){

result.put("success",true);

result.put("msg","login.success");

}else{

result.put("success",false);

result.put("msg","error.password.wrong");

}

if((Boolean)result.get("success")){

message=(String)result.get("msg");

return"success";

}else{

message=(String)result.get("msg");

return"error";

}

}

publicStringgetMessage(){

returnmessage;

}

publicvoidsetMessage(Stringmessage){

this.message=message;

}

publicvoidsetUsername(Stringusername){

this.username=username;

}

publicvoidsetPassword(Stringpassword){

this.password=password;

}

publicStringgetUsername(){

returnusername;

}

publicStringgetPassword(){

returnpassword;

}

}

//增加记录

packagecom.ibm.etp.addressbook.action;

importjava.util.HashMap;

importjava.util.List;

importcom.ibm.etp.addressbook.pojo.User;

importcom.ibm.etp.addressbook.service.LoginService;

importcom.opensymphony.xwork2.ActionSupport;

publicclassLoginActionextendsActionSupport{

privatestaticfinallongserialVersionUID=1L;

publicStringusername;

publicStringpassword;

privateStringmessage;

publicStringexecute()throwsException{

HashMapresult=newHashMap();

Listlist=null;

System.out.println(username);

if(username==null||username.trim().length()==0){

result.put("success",false);

result.put("msg","login.username.empty");

}elseif(password==null||password.trim().length()==0){

result.put("success",false);

result.put("msg","login.password.empty");

}else{

LoginServicels=newLoginService();

list=ls.checkLogin(username);

}

if(list==null){

result.put("success",false);

result.put("msg","error.user.not.exist");

}elseif(list.get(0).getPassword().equals(password)){

result.put("success",true);

result.put("msg","login.success");

}else{

result.put("success",false);

result.put("msg","error.password.wrong");

}

if((Boolean)result.get("success")){

message=(String)result.get("msg");

return"success";

}else{

message=(String)result.get("msg");

return"error";

}

}

publicStringgetMessage(){

returnmessage;

}

publicvoidsetMessage(Stringmessage){

this.message=message;

}

publicvoidsetUsername(Stringusername){

this.username=username;

}

publicvoidsetPassword(Stringpassword){

this.password=password;

}

publicStringgetUsername(){

returnusername;

}

publicStringgetPassword(){

returnpassword;

}

}

//删除记录

packagecom.ibm.etp.addressbook.action;

importjava.util.ArrayList;

importcom.ibm.etp.addressbook.pojo.Record;

importcom.ibm.etp.addressbook.service.DeleService;

importcom.opensymphony.xwork2.ActionSupport;

publicclassDeleActionextendsActionSupport{

privateintid[];

publicStringmessage;

privatebooleansuccess=true;

publicbooleanisSuccess(){

returnsuccess;

}

privateArrayListlist=newArrayList();

publicArrayListgetList(){

returnlist;

}

publicintgetId(inti){

returnid[i];

}

publicint[]getId(){

returnid;

}

publicvoidsetId(int[]id){

this.id=id;

}

publicStringgetMessage(){

returnmessage;

}

publicvoidsetMessage(Stringmessage){

this.message=message;

}

publicStringexecute()throwsException{

DeleServiceds=newDeleService();

list=ds.removeRecord(this);

try{

success=true;

returnSUCCESS;

}catch(Exceptione){

success=false;

returnERROR;

}

}

}

//修改记录

packagecom.ibm.etp.addressbook.action;

importcom.ibm.etp.addressbook.service.UpdateService;

importcom.opensymphony.xwork2.ActionSupport;

publicclassUpdateActionextendsActionSupport{

privateintid;

privateStringname;

privateStringphone;

privateStringemail;

privateStringbirthday;

privateStringsex;

publicintgetId(){

returnid;

}

publicvoidsetId(intid){

this.id=id;

}

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

this.name=name;

}

publicStringgetPhone(){

returnphone;

}

publicvoidsetPhone(Stringphone){

this.phone=phone;

}

publicStringgetEmail(){

returnemail;

}

publicvoidsetEmail(Stringemail){

this.email=email;

}

publicStringgetBirthday(){

returnbirthday;

}

publicvoidsetBirthday(Stringbirthday){

this.birthday=birthday;

}

publicStringgetSex(){

returnsex;

}

publicvoidsetSex(Stringsex){

this.sex=sex;

}

publicStringexecute()throwsException{

UpdateServiceus=newUpdateService();

if(us.setRecord(this)!

=null)

returnSUCCESS;

else{

returnERROR;

}

}

}

//查找记录行

packagecom.ibm.etp.addressbook.action;

importjava.sql.SQLException;

importjava.util.List;

importcom.ibm.etp.addressbook.pojo.Record;

importcom.ibm.etp.addressbook.service.FindService;

importcom.opensymphony.xwork2.ActionSupport;

publicclassFindActionextendsActionSupport{

privateStringfield;

privateStringinput;

privateintsize;

privateStringsort;

privateListlist;

privatebooleansuccess=true;

publicbooleanisSuccess(){

returnsuccess;

}

publicListgetList(){

returnlist;

}

publicvoidsetList(Listlist){

this.list=list;

}

publicStringgetField(){

returnfield;

}

publicvoidsetField(Stringfield){

this.field=field;

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

当前位置:首页 > 经管营销 > 财务管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1