JAVA课程设计报告.docx

上传人:b****3 文档编号:3892886 上传时间:2022-11-26 格式:DOCX 页数:22 大小:136.50KB
下载 相关 举报
JAVA课程设计报告.docx_第1页
第1页 / 共22页
JAVA课程设计报告.docx_第2页
第2页 / 共22页
JAVA课程设计报告.docx_第3页
第3页 / 共22页
JAVA课程设计报告.docx_第4页
第4页 / 共22页
JAVA课程设计报告.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

JAVA课程设计报告.docx

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

JAVA课程设计报告.docx

JAVA课程设计报告

java技术课程设计

 

2012年8月13日

目录

目录2

一、设计思路3

二、具体实现3

三、运行调试与分析讨论5

四、设计体会与小结9

五、参考文献10

六、附录10

一、设计思路

随着社会经济的发展,同学中拥有手机的人越来越多,为方便对同学手机和电话号码的管理,设计电话号码管理软家来管理本班级同学的电话号码。

该软件应支持添加、删除、修改、查询功能。

并且查询功能分为两种情况显示查询的结果:

(1)整体查询有两种显示方式:

一是按加入序号次序显示,另一个是按姓名排序;

(2)个别查询支持模糊查询,例如:

输入“张”,则所有显示。

运用流式、卡片、整体布局方式对系统的主界面和各功能界面进行设计;通过连接数据库的方式来实现对数据的存储;各功能实现时访问数据库,并对数据信息进行读取,运用Java语句对其进行输出,精确查询时显示在文本框中;模糊查询、整体查询时运用文本域显示,并运用滚动条进行调节查看查询结果。

系统提示功能用来提醒用户的错误操作和输入时的错误信息,提醒用户进行改正

二、具体实现

该系统中的信息存储在数据库中,并实现以下各功能:

添加功能:

添加数据信息,当有新同学进入是可以添加该同学的信息。

通过文本框读入添加信息,连接数据库后储存数据。

精确查询:

输入要查询同学的姓名,显示出该同学的信息。

通过文本框读入要查找的信息,用SQL语句在数据库中进行查找。

模糊查询:

当不知道同学的全名时,输入该同学姓名中的一个或多个字运用SQL中的模糊查询语句即可找到名字中含有输入字的同学的信息。

整体查询:

显示出数据库中全部同学的信息。

删除功能:

该功能和精确查询功能在同一功能模块中实现,有于删除同学信息并更新数据库信息。

修改功能:

当同学的信息改变时,用此功能更新同学信息。

通过对数据库信息的更新保存最新信息。

每种功能通过一个类来实现:

类分分为主类、精确查询类、模糊查询类、整体查询类、修改类、添加类、提示类。

主类(manager)实现系统主界面以及和各功能界面的连接;精确查询类(find)实现对数据库中数据的精确查询和删除;模糊查询类(mhcx)显示对数据的模糊查询;整体查询类(ztcx)用来显示全部同学的电话信息;修改类(update)实现对数据的修改更新;添加类(tianjia)向数据库中添加新数据;提示类(about)实现对软件的介绍。

该系统需要用数据库来实现对信息的存储,每次对信息的操作都要访问数据库,并对数据库的信息作相应的读入和取出。

该系统流程图如下:

图1系统流程图

程序开始运行后产生系统的界面,此时由用户来选择需要的操作,程序根据用户的选择判断并响应相应的操作,

图2程序流程图

三、运行调试与分析讨论

系统的详细设计代码请查阅附带的代码。

以下仅对各个界面进行截图展示:

图3系统主界面

图4添加信息时的界面

图5修改信息时的界面

图6精确查询时的界面

图7整体查询界面

图8模糊查询界面

图9系统提示界面

运行JAVA程序中的manager文件,显示系统的主界面,如图三所示,主界面有进入其他子功能的按钮,选择相应的按钮便可进入相应的功能。

添加号码功能如图四所示,根据提示输入要添加的信息,点击确定,将弹出提示框,确认是否添加。

修改号码功能如图五所示,首先输入要修改的人姓名,点击开始修改,在下面的文本框现实当前数据库内所存该人的信息,同时录入修改键变化为可点击,在文本框内输入要修改的号码,点击录入修改,系统将新信息录如数据库。

点击精确查询按钮,将弹出查询对话框,

输入姓名便可以精确查询到此人的所有电话号码信息。

整体查询如图七所示,将显示数据库中所存的所有号码信息。

模糊查询如图八所示,在文本框中填写姓名的一个字,便可查询所有姓名中含有这个字的电话信息,并显示在文本域内。

四、设计体会与小结

一周的课设,自己通过查找资料、复习课本、编程调试,写实验报告等环节,进一步掌握了以前学到的知识,并且还对GUI组键的应用有了更深入的认识与掌握,另外还学到了一些新东西,比如JAVA的SWING、AWT包,以前是没有接触过的,可是通过这次课程设计使得我们对这个包更了解。

通过与数据库的连接掌握了Java与数据库的连接技术。

通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习java语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。

五、参考文献

[1]朱福喜,尹为民等编著.Java语言与面向对象程序设计.武汉:

武汉大学出版社,2002.12

[2]冯军,程超等编著.JBuilder9.0程序设计.北京:

中国水利水电出版社,2004.5

[3]丁振凡,黎章等编著.Java语言实用教程..北京:

北京邮电大学出版社,2005.8

[4]何桥,李肃义等编著.Java程序设计简明教程.北京:

中国水利水电出版社,2004.9

六、附录

程序的主要代码:

主界面模块主要代码manager.java

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==添加)

{

card.show(pCenter,"录入界面");

}

elseif(e.getSource()==修改)

{

card.show(pCenter,"修改界面");

}

elseif(e.getSource()==精确查询1)

{

精确查询.setVisible(true);

}

elseif(e.getSource()==整体查询1)

{

card.show(pCenter,"整体查询界面");

}

elseif(e.getSource()==模糊查询1)

{

card.show(pCenter,"模糊查询界面");

}

elseif(e.getSource()==bbbb){

关于.setVisible(true);

}

}

publicstaticvoidmain(Stringargs[])

{

newmanager();

}

}

添加功能模块主要代码tianjia.java

publicvoidtextValueChanged(TextEvente){

if(e.getSource()==手机号码){

Strings=手机号码.getText();

for(inti=0;i

charc=s.charAt(i);

if(c<'0'||c>'9'){

Stringwarning="请输入数字!

";

JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);

手机号码.setText(null);

}

}

}

if(e.getSource()==家庭电话){

Strings=家庭电话.getText();

for(inti=0;i

charc=s.charAt(i);

if(c<'0'||c>'9'){

Stringwarning="请输入数字!

";

JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);

家庭电话.setText(null);

}

}

}

if(e.getSource()==办公电话){

Strings=办公电话.getText();

for(inti=0;i

charc=s.charAt(i);

if(c<'0'||c>'9'){

Stringwarning="请输入数字!

";

JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);

办公电话.setText(null);

}

}

}

}

publicvoidactionPerformed(ActionEvente){

Stringname="";

Stringurl="jdbc:

odbc:

diaoyou1";

Strings1="";

Strings2="";

Strings3="";

Strings4="";

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(java.lang.ClassNotFoundExceptioneee){}

s1=姓名.getText();

s2=手机号码.getText();

s3=家庭电话.getText();

s4=办公电话.getText();

Stringsql="insertintonumbervalues(?

?

?

?

)";

if(e.getSource()==确定){

if(s1==""){Stringwarning="必须输入姓名!

";

JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);

}

else{

Stringm="添加此人电话!

";

intok=JOptionPane.showConfirmDialog(this,m,"确认",JOptionPane.YES_NO_OPTION,

JOptionPane.INFORMATION_MESSAGE);

if(ok==JOptionPane.YES_OPTION){

try{

Connectioncon=DriverManager.getConnection(url,"",null);

Statementstmt=con.createStatement();

PreparedStatementps=con.prepareStatement(sql);

ps.setString(1,s1);

ps.setString(2,s2);

ps.setString(3,s3);

ps.setString(4,s4);

ps.executeUpdate();

stmt.close();

con.close();}catch(SQLExceptionex){System.out.println(ex.getMessage());}

}

}

姓名.setText(null);

手机号码.setText(null);

家庭电话.setText(null);

办公电话.setText(null);

}

if(e.getSource()==重置)

{

姓名.setText(null);

手机号码.setText(null);

家庭电话.setText(null);

办公电话.setText(null);

}

}

}

修改模块代码主要代码update.java

publicvoidactionPerformed(ActionEvente){

Stringname="";

Strings1="";

Strings2="";

Strings3="";

Strings4="";

Stringurl="jdbc:

odbc:

diaoyou1";

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(java.lang.ClassNotFoundExceptioneee){}

if(e.getSource()==开始修改){

name=姓名.getText();

Stringsql="select*fromnumberwhere姓名='"+name+"'";

try{

Connectioncon=DriverManager.getConnection(url,"",null);

Statementstmt=con.createStatement();

ResultSetrs=stmt.executeQuery(sql);

while(rs.next()){

s1=rs.getString("姓名");

s2=rs.getString("手机号码");

s3=rs.getString("家庭电话");

s4=rs.getString("办公电话");

}

stmt.close();

con.close();

}catch(SQLExceptionex){System.out.println(ex.getMessage());}

if(s1!

=null){

录入修改.setEnabled(true);

手机号码.setText(s2);

家庭电话.setText(s3);

办公电话.setText(s4);

}

}

if(e.getSource()==录入修改){

name=姓名.getText();

s2=手机号码.getText();

s3=家庭电话.getText();

s4=办公电话.getText();

Stringsql2="updatenumberset手机号码='"+s2+"'"+"where姓名='"+name+"'";

Stringsql3="updatenumberset家庭电话='"+s3+"'"+"where姓名='"+name+"'";

Stringsql4="updatenumberset办公电话='"+s4+"'"+"where姓名='"+name+"'";

try{

Connectioncon=DriverManager.getConnection(url,"",null);

Statementstmt=con.createStatement();

stmt.executeUpdate(sql2);

stmt.executeUpdate(sql3);

stmt.executeUpdate(sql4);

stmt.close();

con.close();

}catch(SQLExceptionexx){System.out.println(exx.getMessage());}

}

if(e.getSource()==重置)

{

姓名.setText(null);

手机号码.setText(null);

家庭电话.setText(null);

办公电话.setText(null);

}

}

}

精确查询模块主要代码find.java

publicvoidactionPerformed(ActionEvente)

{

Stringname="";

Stringurl="jdbc:

odbc:

diaoyou1";

Strings1="";

Strings2="";

Strings3="";

Strings4="";

if(e.getSource()==查询)

{

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(java.lang.ClassNotFoundExceptioneee){}

name=姓名.getText();

Stringsql="select*fromnumberwhere姓名='"+name+"'";

if(name!

=""){

try{

Connectioncon=DriverManager.getConnection(url,"",null);

Statementstmt=con.createStatement();

ResultSetrs=stmt.executeQuery(sql);

while(rs.next()){

s1=rs.getString("姓名");

s2=rs.getString("手机号码");

s3=rs.getString("家庭电话");

s4=rs.getString("办公电话");

}

stmt.close();

con.close();

}catch(SQLExceptionex){System.out.println(ex.getMessage());}

if(s1!

=null){

姓名.setText(s1);

手机号码.setText(s2);

家庭电话.setText(s3);

办公电话.setText(s4);

}

}

}

if(e.getSource()==删除){

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(java.lang.ClassNotFoundExceptioneee){}

name=姓名.getText();

Stringsql="deletefromnumberwhere姓名='"+name+"'";

try{

Connectioncon=DriverManager.getConnection(url,"",null);

Statementstmt=con.createStatement();

stmt.executeUpdate(sql);

stmt.close();

con.close();

}catch(SQLExceptioneex){System.out.println(eex.getMessage());}

姓名.setText(null);

手机号码.setText(null);

家庭电话.setText(null);

办公电话.setText(null);

}

}

}

整体查询模块完整代码ztcx.java

publicclassztcxextendsJPanelimplementsActionListener{

JTextArearuslt;

JButton查询;

Stringname;

Stringsql="";

JScrollPanescroll;

publicztcx(){

ruslt=newJTextArea(10,28);

ruslt.setEditable(false);

查询=newJButton("查询");

scroll=newJScrollPane(ruslt);

Boxbox2=Box.createHorizontalBox();

box2.add(查询);

Boxbox3=Box.createHorizontalBox();

box3.add(scroll);

BoxboxH=Box.createVerticalBox();

boxH.add(box2);

boxH.add(box3);

查询.addActionListener(this);

JPanelpCenter=newJPanel();

pCenter.add(boxH);

setLayout(newBorderLayout());

add(pCenter,BorderLayout.CENTER);

validate();

}

publicvoidactionPerformed(ActionEvente){

Stringurl="jdbc:

odbc:

diaoyou1";

Strings1="";

Strings2="";

Strings3="";

Strings4="";

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(java.lang.ClassNotFoundExceptioneee){}

if(e.getSource()==查询){

try{

Connectioncon=DriverManager.getConnection(url,"",null);

Statementstmt=con.createStatement();

sql="select*fromnumber";

ResultSetrs=stmt.executeQuery(sql);

ruslt.setText("姓名手机号码家庭电话办公电话\n");

if(!

rs.next())

ruslt.setText("无记录");

else

{

do{

s1=rs.getString("姓名");

s2=rs.getString("手机号码");

s3=rs.getString("家庭电话");

s4=rs.getString("办公电话");

ruslt.append(s1);

ruslt.append(s2);

ruslt.append(s3);

ruslt.append(s4+"\n");

}while(rs.next());

}

stmt.close();

con.close();

}catch(SQLExceptionex){System.out.println(ex.getMessage());}

}

}

}

模糊查询模块完整代码mhcx.java

publicclassmhcxextendsJPanelimplementsActionListener{

JTextArearuslt;

JTextFieldtj;

JButton查询;

Stringname;

Stringsql="";

JLa

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

当前位置:首页 > 工程科技 > 能源化工

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

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