java课程设计通讯录1设计报告.docx

上传人:b****6 文档编号:7709923 上传时间:2023-01-25 格式:DOCX 页数:8 大小:101.81KB
下载 相关 举报
java课程设计通讯录1设计报告.docx_第1页
第1页 / 共8页
java课程设计通讯录1设计报告.docx_第2页
第2页 / 共8页
java课程设计通讯录1设计报告.docx_第3页
第3页 / 共8页
java课程设计通讯录1设计报告.docx_第4页
第4页 / 共8页
java课程设计通讯录1设计报告.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

java课程设计通讯录1设计报告.docx

《java课程设计通讯录1设计报告.docx》由会员分享,可在线阅读,更多相关《java课程设计通讯录1设计报告.docx(8页珍藏版)》请在冰豆网上搜索。

java课程设计通讯录1设计报告.docx

java课程设计通讯录1设计报告

JAVA课程设计报告

 

姓名

学号

同组人员

成绩

 

目录

 

一.引言……………………………………………………………3

二.系统总体设计…………………………………………………3

三.具体分工………………………………………………………4

四.使用说明………………………………………………………7

五.总结……………………………………………………………11

六.参考文献………………………………………………………12

 

一.引言

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

有些家庭人员众多,有的家庭成员甚至有好几个联系方式,在这种情况下,要记住所有的联系方式似乎有些困难,所以我们希望设计一个家庭通讯录,记录所有家庭成员的联系方式,并且能方便的查找,增加和删除。

二.系统总体设计

要设计这么一个家庭通讯录,我们采用自顶向下的设计方法,将系统分成几个模块,分别实现模块后再将各模块连接,通过调试完成整个系统的设计。

设计系统的框架如图1所示。

图1.系统总体框架

 

我们的通讯录分成三大模块:

数据库,显示界面以及算法:

通讯录的增加修改等都需要访问数据库,所以需要建立数据库和连接数据库。

显示界面是人机交互的窗口,我们力争做到简洁美观,能让用户很方便的使用。

主界面上是显示功能的工具条以及表格,点击功能按钮,如“查找”等,会弹出对话框。

算法可以实现“增加”“查找”“删除”等功能。

三.具体分工

在具体实现的过程中我负责算法和响应部分,具体实现过程如下

1)算法部分:

Add算法:

if(be.getActionCode()==be.OK)

{

StringinsertSql="insertintodataVALUES(?

?

?

?

)";

Object[]lineForDBAdd={be.getName(),be.getAddress(),be.getTel(),be.getMob()

};

if(SqlUtil.addRowToDB(con,insertSql,lineForDBAdd))

{

//成功写入数据库的记录,追加到表格末行显示

model.insertRow(model.getRowCount(),lineForDBAdd);

//将表格的最后一行选中

table.changeSelection(model.getRowCount()-1,0,false,false);

}

search算法:

if(sd.getActionCode()==sd.OK)

{

StringreadSql=sd.getSQL();

SqlUtil.readDBToTable(con,readSql,model,dataType);

}

delete算法:

intresult=JOptionPane.showConfirmDialog(f,"您确定要删除该条记录信息吗?

","确认",

JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);

if(result!

=JOptionPane.YES_OPTION)return;

StringdeleteSql="deletefromdatawherename=?

";

Object[]keys={model.getValueAt(selected,0).toString()};

if(SqlUtil.deleteFromDB(con,deleteSql,keys))

model.removeRow(selected);

addRowToDB算法:

update=con.prepareStatement(insertSql);//向数据库插入if(lineForDBAdd!

=null)//一条记录

for(inti=0;i

update.setObject(i+1,lineForDBAdd[i]);

update.executeUpdate();

ReadDBToTable算法:

query=con.prepareStatement(readSql);//从数据库读取数据到表格

query.clearParameters();

ResultSetrs=query.executeQuery();

while(rs.next())

{

intcolumn=model.getColumnCount();

Object[]line=newObject[column];

for(inti=0;i

{

line[i]=rs.getString(i+1).trim();

}

model.addRow(line);

}

deleteFromDB算法:

update=con.prepareStatement(deleteSql);//删除数据库中的记录

if(keys!

=null)

for(inti=0;i

update.setObject(i+1,keys[i]);

update.executeUpdate();

ClearAllRowsInTable算法:

while(model.getRowCount()>0)//清空表格中所有数据

model.removeRow(0);

2)响应部分:

“增加”对话框的响应:

publicvoidactionPerformed(ActionEvente){

Objects=e.getSource();

if(s==this.btnCancel){

this.actionCode=this.CANCEL;

this.setVisible(false);

}

elseif(s==this.btnOk)okClicked();

}

publicvoidokClicked(){

//姓名不为空时隐藏对话框

if(!

this.txtName.getText().trim().equals(""))

{

this.actionCode=this.OK;

this.setVisible(false);

}

else

JOptionPane.showMessageDialog(f,"请输入姓名","提示",

JOptionPane.INFORMATION_MESSAGE);

}

“查找”对话框的响应:

publicvoidactionPerformed(ActionEvente){

Objects=e.getSource();

if(s==this.radName)

setTxtEditable(true,false,false,false);

elseif(s==this.radAddress)setTxtEditable(false,true,false,false);

elseif(s==this.radTel)setTxtEditable(false,false,true,false);

elseif(s==this.radMob)setTxtEditable(false,false,false,true);

elseif(s==this.btnOK){

this.actionCode=this.OK;

this.setVisible(false);

}

elseif(s==this.btnCancel){

this.actionCode=this.CANCEL;

this.setVisible(false);

}

}

主界面按钮响应:

publicvoidactionPerformed(ActionEvente)

{

Objects=e.getSource();

if(s==this.btnAdd)add();

elseif(s==this.btnSearch)search();

elseif(s==this.btnDelete)delete();

elseif(s==this.btnExit)System.exit(0);

}

 

四.使用说明

运行程序出现如下界面:

1)显示所有项目,点击“查找”,不输入查找内容,直接“确定”。

 

2)增加一条信息,点击“增加”,输入所需字段。

点击“确定”。

 

3)查找信息,点击“查找”,输入任意字段查找。

点击“确定”。

 

4)删除一条信息,选中某一条信息,点击“删除”,弹出对话框,点击“是(Y)”。

 

如果未选中信息,点击“删除”,则会弹出如下对话框:

 

需要,选中一条,再点击“删除”。

五.总结

通过这次课程设计,我们不仅顺利做出了整个课题,并且有很多收获和体会。

这个过程中遇到的最大的困难就是以前没有接触过java,所以要从头开始。

从了解数据语法结构,到研究代码,像学习其他语言一样,要经过一个痛苦的过程才能渐入佳境。

好在java和C/C++有相似之处,使我们学起来能轻松一点。

我们小组成员在分完系统模块后,就各自负责一部分模块,最后再整合调试。

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

还有就是实践的重要性。

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

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

 

六.参考文献

於东军等著,《Java程序设计与应用开发》,清华大学出版,2005年

于万波主编,《Java语言实用教程》,清华大学出版社,2008年

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

当前位置:首页 > 高等教育 > 研究生入学考试

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

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