JAVA实验报告5数据库程序设计.docx

上传人:b****2 文档编号:18618698 上传时间:2023-08-20 格式:DOCX 页数:15 大小:50.88KB
下载 相关 举报
JAVA实验报告5数据库程序设计.docx_第1页
第1页 / 共15页
JAVA实验报告5数据库程序设计.docx_第2页
第2页 / 共15页
JAVA实验报告5数据库程序设计.docx_第3页
第3页 / 共15页
JAVA实验报告5数据库程序设计.docx_第4页
第4页 / 共15页
JAVA实验报告5数据库程序设计.docx_第5页
第5页 / 共15页
JAVA实验报告5数据库程序设计.docx_第6页
第6页 / 共15页
JAVA实验报告5数据库程序设计.docx_第7页
第7页 / 共15页
JAVA实验报告5数据库程序设计.docx_第8页
第8页 / 共15页
JAVA实验报告5数据库程序设计.docx_第9页
第9页 / 共15页
JAVA实验报告5数据库程序设计.docx_第10页
第10页 / 共15页
JAVA实验报告5数据库程序设计.docx_第11页
第11页 / 共15页
JAVA实验报告5数据库程序设计.docx_第12页
第12页 / 共15页
JAVA实验报告5数据库程序设计.docx_第13页
第13页 / 共15页
JAVA实验报告5数据库程序设计.docx_第14页
第14页 / 共15页
JAVA实验报告5数据库程序设计.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

JAVA实验报告5数据库程序设计.docx

《JAVA实验报告5数据库程序设计.docx》由会员分享,可在线阅读,更多相关《JAVA实验报告5数据库程序设计.docx(15页珍藏版)》请在冰点文库上搜索。

JAVA实验报告5数据库程序设计.docx

JAVA实验报告5数据库程序设计

JAVA实验(5)

课程名称:

Java面向对象程序设计

学院:

管理学院

专业班级:

信息管理与信息系统(6)班

学号:

3108006406

姓名:

张钟权

任课教师:

聂小东

 

2010年06月01日

 

管理学院信息管理与信息系统专业08信管6班______组学号3108006406姓名张钟权协作者教师评定_____________

实验题目数据库程序设计

一、实验目的与要求

(1)实验目的:

通过电子词典程序的设计了解如何使用JDBC连接数据库。

(2)实验要求:

按照实验指导书要求在指定窗口界面中完成第五章中电子

词典程序的编写和调试。

二、实验方案

1、系统运行主类Dic:

Main()方法:

程序入口,建立窗体类DataWindow的对象。

2、窗口主界面类DataWindow:

DataWindow()方法:

安排界面布局,设置菜单项和工具按钮;

actionPerformed()方法:

执行按钮动作事件;

Listwords()方法:

实现数据查询功能。

3、添加单词类AddWin:

AddWin()方法:

安排界面布局,设置监听按钮;

actionPerformed()方法:

执行按钮动作事件,调用添加()方法;

添加()方法:

实现添加数据功能。

4、修改单词类ModifyWin:

ModifyWin()方法:

安排界面布局,设置监听按钮;

actionPerformed()方法:

执行按钮动作事件,调用修改()方法;

删除()方法:

实现修改数据功能。

5、删除单词类DelWin:

DelWin()方法:

安排界面布局,设置监听按钮;

actionPerformed()方法:

执行按钮动作事件,调用删除()方法;

删除()方法:

实现删除数据功能。

6、使用帮助类HelpFrame

三、实验结果和数据处理

1、添加单词程序:

importjava.awt.*;

importjava.awt.event.*;

importjava.sql.*;

importjavax.swing.*;

publicclassAddWinextendsJFrameimplementsActionListener{

JTextField添加汉语解释_文本条,添加英语单词_文本条;

JButtonaddbtn,cancelbtn;

ConnectionCon=null;

StatementStmt=null;

publicAddWin()

{

super("添加单词");

this.setBounds(250,250,250,200);

this.setVisible(true);

JPanelp1=newJPanel();

p1.add(newLabel("输入要添加的单词:

"));

添加英语单词_文本条=newJTextField(20);

p1.add(添加英语单词_文本条);

p1.add(newLabel("输入添加的单词的解释:

"));

添加汉语解释_文本条=newJTextField(20);

p1.add(添加汉语解释_文本条);

addbtn=newJButton("提交");

cancelbtn=newJButton("取消");

p1.add(addbtn);p1.add(cancelbtn);

this.add(p1);

addbtn.addActionListener(this);

cancelbtn.addActionListener(this);

this.validate();

}

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==addbtn)

{

if(添加英语单词_文本条.getText().equals("")||

添加汉语解释_文本条.getText().equals(""))

{

JOptionPane.showMessageDialog(this,"添加的单词或解释不能为空!

","警告",

JOptionPane.WARNING_MESSAGE);

}

//判断输入框不能为空

else{

try{

添加();

}

catch(SQLExceptionee){}

}

}

elseif(e.getSource()==cancelbtn)

{

dispose();

}

}

publicvoid添加()throwsSQLException//实现添加功能

{

Stringcname,ename;

try

{

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

}

catch(ClassNotFoundExceptione){}

Con=DriverManager.getConnection("jdbc:

odbc:

Driver={MicroSoftAccessDriver(*.mdb)};DBQ=english\\english.mdb","","");

Stmt=Con.createStatement();

ResultSetrs=Stmt.executeQuery("SELECT*FROM表1");

booleanboo=false;

while((boo=rs.next())==true)

{

ename=rs.getString("单词");

cname=rs.getString("解释");

if(ename.equals(添加英语单词_文本条.getText()))

{

JOptionPane.showMessageDialog(this,"此词汇已存在!

","警告",

JOptionPane.WARNING_MESSAGE);

break;

}

}

if(boo==false)

{

Strings1="'"+添加英语单词_文本条.getText().trim()+"'",s2="'"+添加汉语解释_文本条.getText().trim()+"'";

Stringtemp="INSERTINTO表1VALUES("+s1+","+s2+")";

Stmt.executeUpdate(temp);

JOptionPane.showMessageDialog(this,"添加成功!

","恭喜",

JOptionPane.WARNING_MESSAGE);

dispose();

}

Con.close();

}

}

 

2、修改单词程序:

importjava.awt.*;

importjava.awt.event.*;

importjava.sql.*;

importjavax.swing.*;

classModifyWinextendsJFrameimplementsActionListener

{

JTextField修改英语单词_文本条,修改汉语解释_文本条;

JButtonmodifybtn,cancelbtn;

ConnectionCon=null;

StatementStmt=null;

ModifyWin()

{

super("修改");

this.setBounds(250,250,250,200);

this.setVisible(true);

JPanelp=newJPanel();

p.add(newLabel("输入英语单词:

"));

修改英语单词_文本条=newJTextField(20);

p.add(修改英语单词_文本条);

p.add(newLabel("输入该单词修改的汉语解释:

"));

修改汉语解释_文本条=newJTextField(20);

p.add(修改汉语解释_文本条);

modifybtn=newJButton("提交");

cancelbtn=newJButton("取消");

p.add(modifybtn);p.add(cancelbtn);

modifybtn.addActionListener(this);

cancelbtn.addActionListener(this);

this.add(p);

this.validate();

}

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==modifybtn)

{

if(修改英语单词_文本条.getText().equals("")||

修改汉语解释_文本条.getText().equals(""))

{

JOptionPane.showMessageDialog(this,"修改的单词或解释不能为空!

","警告",

JOptionPane.WARNING_MESSAGE);

}

//判断输入框不能为空

else

{

try{

修改();

}

catch(SQLExceptionee){}

}

}

elseif(e.getSource()==cancelbtn)

{

dispose();

}

}

publicvoid修改()throwsSQLException//实现修改功能

{

Stringcname,ename;

try

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

catch(ClassNotFoundExceptione){}

Con=DriverManager.getConnection("jdbc:

odbc:

Driver={MicroSoftAccessDriver(*.mdb)};DBQ=english\\english.mdb","","");

Stmt=Con.createStatement();

ResultSetrs=Stmt.executeQuery("SELECT*FROM表1");

booleanboo=false;

while((boo=rs.next())==true)

{

ename=rs.getString("单词");

cname=rs.getString("解释");

if(ename.equals(修改英语单词_文本条.getText()))

{

Strings1="'"+修改英语单词_文本条.getText().trim()+"'",s2="'"+修改汉语解释_文本条.getText().trim()+"'";

Stringtemp="UPDATE表1SET解释="+s2+"WHERE单词="+s1;

Stmt.executeUpdate(temp);

JOptionPane.showMessageDialog(this,"记录修改成功!

","恭喜",

JOptionPane.WARNING_MESSAGE);

dispose();

break;

}

}

Con.close();

if(boo==false)

{

JOptionPane.showMessageDialog(this,"不存在此单词!

","警告",

JOptionPane.WARNING_MESSAGE);

}

}

}

 

3、删除单词程序:

importjava.awt.*;

importjava.awt.event.*;

importjava.sql.*;

importjavax.swing.*;

classDelWinextendsJFrameimplementsActionListener{

JTextField删除单词_文本条;

JButtondelbtn,cancelbtn;

ConnectionCon=null;

StatementStmt=null;

DelWin()

{

super("删除单词");

this.setBounds(250,250,250,200);

this.setVisible(true);

JPanelp1=newJPanel();

p1.add(newLabel("输入要删除的单词:

"));

删除单词_文本条=newJTextField(20);

p1.add(删除单词_文本条);

delbtn=newJButton("删除");

cancelbtn=newJButton("取消");

p1.add(delbtn);p1.add(cancelbtn);

this.add(p1);

delbtn.addActionListener(this);

cancelbtn.addActionListener(this);

this.validate();

}

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==delbtn)

{

if(删除单词_文本条.getText().equals(""))

{

JOptionPane.showMessageDialog(this,"删除的单词不能为空!

","警告",

JOptionPane.WARNING_MESSAGE);

}

//判断输入框不能为空

else

{

try{

删除();

}

catch(SQLExceptionee){}

}

}

elseif(e.getSource()==cancelbtn)

{

dispose();

}

}

publicvoid删除()throwsSQLException//实现删除功能

{

Stringcname,ename;

try

{

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

}

catch(ClassNotFoundExceptione){}

Con=DriverManager.getConnection("jdbc:

odbc:

Driver={MicroSoftAccessDriver(*.mdb)};DBQ=english\\english.mdb","","");

Stmt=Con.createStatement();

ResultSetrs=Stmt.executeQuery("SELECT*FROM表1");

booleanboo=false;

while((boo=rs.next())==true)

{

ename=rs.getString("单词");

cname=rs.getString("解释");

if(ename.equals(删除单词_文本条.getText()))

{

Strings1="'"+删除单词_文本条.getText().trim()+"'";

Stringtemp="DELETEFROM表1WHERE单词="+s1;

Stmt.executeUpdate(temp);

JOptionPane.showMessageDialog(this,"成功删除记录!

","恭喜",

JOptionPane.WARNING_MESSAGE);

dispose();

break;

}

}

Con.close();

if(boo==false)

{

JOptionPane.showMessageDialog(this,"不存在此单词!

","警告",

JOptionPane.WARNING_MESSAGE);

}

}

}

四、结论

JDBC是java程序连接数据库的应用程序接口,其由一群类和接口组成,通过调用这些类和接口所提供的成员方法,我们可以连接各种不同的数据库,进而使用标准的SQL命令对数据库进行查找、插入、删除、更新等操作。

五、问题与讨论

本章实验是数据库程序的设计,主要完成电子词典程序的编写和调试,通过使用JDBC连接数据库,实现对数据库的访问和操作。

主要完成的任务有请求与数据库建立连接、向数据库发送SQL请求、为结果集定义储存应用和数据类型、查询结果、处理错误、控制传输提交以及关闭连接等。

实验过程中,由于缺乏对常用的JDBC类和方法的了解,导致实验的实施操作一度出现困难,后来借助实验教程,终于勉强完成了程序的调试工作。

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

当前位置:首页 > 小学教育

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2