java课程设计 通讯录管理系统Word文档格式.docx
- 文档编号:22057983
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:17
- 大小:179.87KB
java课程设计 通讯录管理系统Word文档格式.docx
《java课程设计 通讯录管理系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《java课程设计 通讯录管理系统Word文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
二、功能介绍
(1)具有新用户注册功能。
(2)具有注册用户登录功能。
(3)具有数据的录入功能。
(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。
(5)具有按条件删除数据功能。
(6)具有统计功能
三、程序流程
4.1数据库表的设计
(1)普通用户数据表的设计,如表1
表1普通用户数据表
列名
数据类型
长度
是否为空
username(key)
varchar
20
否
password
char
10
是
(2)记录信息数据表,如表2
表2记录信息数据表
name(key)
sex
birthday
datatime
8
tel
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{
HashMap<
Object,Object>
result=newHashMap<
();
List<
User>
list=null;
System.out.println(username);
if(username==null||username.trim().length()==0){
result.put("
success"
false);
msg"
"
login.username.empty"
);
}elseif(password==null||password.trim().length()==0){
login.password.empty"
}else{
LoginServicels=newLoginService();
list=ls.checkLogin(username);
}
if(list==null){
error.user.not.exist"
}elseif(list.get(0).getPassword().equals(password)){
true);
login.success"
error.password.wrong"
if((Boolean)result.get("
)){
message=(String)result.get("
return"
;
error"
}
publicStringgetMessage(){
returnmessage;
publicvoidsetMessage(Stringmessage){
this.message=message;
publicvoidsetUsername(Stringusername){
this.username=username;
publicvoidsetPassword(Stringpassword){
this.password=password;
publicStringgetUsername(){
returnusername;
publicStringgetPassword(){
returnpassword;
}
//增加记录
//删除记录
importjava.util.ArrayList;
importcom.ibm.etp.addressbook.pojo.Record;
importcom.ibm.etp.addressbook.service.DeleService;
publicclassDeleActionextendsActionSupport{
privateintid[];
publicStringmessage;
privatebooleansuccess=true;
publicbooleanisSuccess(){
returnsuccess;
privateArrayList<
Record>
list=newArrayList<
publicArrayList<
getList(){
returnlist;
publicintgetId(inti){
returnid[i];
publicint[]getId(){
returnid;
publicvoidsetId(int[]id){
this.id=id;
publicStringexecute()throwsException{
DeleServiceds=newDeleService();
list=ds.removeRecord(this);
try{
success=true;
returnSUCCESS;
}catch(Exceptione){
success=false;
returnERROR;
}
//修改记录
importcom.ibm.etp.addressbook.service.UpdateService;
publicclassUpdateActionextendsActionSupport{
privateintid;
privateStringname;
privateStringphone;
privateStringemail;
privateStringbirthday;
privateStringsex;
publicintgetId(){
publicvoidsetId(intid){
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;
UpdateServiceus=newUpdateService();
if(us.setRecord(this)!
=null)
returnSUCCESS;
else{
returnERROR;
//查找记录行
importjava.sql.SQLException;
importcom.ibm.etp.addressbook.service.FindService;
publicclassFindActionextendsActionSupport{
privateStringfield;
privateStringinput;
privateintsize;
privateStringsort;
privateList<
list;
publicList<
publicvoidsetList(List<
list){
this.list=list;
}
publicStringgetField(){
returnfield;
publicvoidsetField(Stringfield){
this.field=field;
publicStringgetInput(){
returninput;
publicvoidsetInput(Stringinput){
this.input=input;
publicintgetSize(){
returnsize;
publicvoidsetSize(intsize){
this.size=size;
publicStringgetSort(){
returnsort;
publicvoidsetSort(Stringsort){
this.sort=sort;
publicStringexecute()throwsException{
FindActionfb=newFindAction();
fb.setField(field);
fb.setInput(input);
fb.setSize(size);
fb.setSort(sort);
FindServicefs=newFindService();
try{
list=fs.find(fb);
success=true;
returnSUCCESS;
}catch(SQLExceptione){
e.printStackTrace();
success=false;
七、参考文献
1)《Java语法及网络应用设计》,徐迎晓编著,清华大学出版社
2)《
ThinkinginJAVA(ThirdEdition)》,BruceEckel,机械工业出版社
3)《Java2核心技术(第6版)卷I:
基础知识》,CayS.Horstmann,GaryCornell,程峰等译,机械工业出版社
4)《Java语言程序设计》,郎波,清华大学出版社5)《Java语言程序设计基础》,柳西玲,许斌,清华大学出版
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java课程设计 通讯录管理系统 java 课程设计 通讯录 管理 系统