JAVA设计实现电子词典

  • 格式:doc
  • 大小:147.50 KB
  • 文档页数:14

下载文档原格式

  / 14
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

两周的课程设计实训我做的是用Java基本程序编写一个简单的电子词典,该程序是一个图形界面连接数据库的英汉字典,其界面主要采用了awt包,程序实现了电子词典的基本功能有:查询、修改,添加词汇并保存修改,添加后的词汇,通过自己的实际动手操作,进一步加深了对Java的理解,电子词典的完成我还了解了市场的需求,培养了自己的学习兴趣。

关键字:Java图形界面,Access数据库,actionPerformed()接口方法,ActionEvent事件

目录

1需求分析 (4)

2. 概要设计 (4)

2.1设计思路 (4)

2.1.1 系统总体功能模块图 (4)

3. 详细设计 (5)

3.1 主界面功能 (5)

3.2 英译汉功能 (5)

3.3 汉译英功能 (6)

3.4数据库创建与连接 (6)

4. 主要程序源代码 (7)

5.调试程序 (13)

6.结论 (13)

7.参考文献 (14)

1需求分析

我们的课题是电子词典功能的实现,电子词典作为一种学习工具,有着不可估量的市场前景。作为一名学生,我们在学习英语的时候会经常碰到很多的生词,有时,为了读懂一篇文章,经常是读文章用一小时,但是其中却有半个小时都在翻阅英语字典。所以我们小组为了解决这一问题,才将选材方向定位于电子词典的功能实现,主要的目的就是为同学们解决这一问题。在做电子词典功能实现的时候,我们主要从以下几个方面入手,即:查询,添加,修改,

在这几个功能模块上,我们首先提供了一个查询界面,即使用者需要输入要查询的关键字,点击确定按钮,屏幕上就会出现其对应的答案。在做这个模块的时候,我们主要解决了JAVA与数据库的链接问题,进而实现其功能。解决了同学们在学习英语过程中遇到的困难,满足了市场的需求。

2. 概要设计

2.1设计思路

本系统在单词查阅方面主要完成了英译汉功能;在系统性能方面主要完成了单词库的添加、修改、删除,退出功能等。

2.1.1 系统总体功能模块图

图形界面的实现:考虑到简单、实用、高效等特点,就选择了AWT来完成实现,在选择组件上,文本编辑区就选用了TaxtArea,TextField,Button作为主要的部件,文本框上使用ActionEvent事件,文本区上实现TextEvent事件,实现接口方法用到了actionPerformeredf方法

在设计类的时候,要实现三个系统性能功能,就用了三个类,一个主类和一个默认属性类作为程序的整体框架,所有的对象和方法都是在默认属性类中创建和实现的,以及为各组件注册事件监听程序也是在默认属性类中实现的。主类完成对象的实例化及显示。这们设计的优点是:条理清晰,容易理解,容易修改。这样设计的缺点是:不利于共享类中的方法。

数据库的创建,用Access创建数据库,库的名称叫做english,表的名称也叫做english,.为了将图形界面与数据库建立连接首先要创建一个ODBC数据源。数据库连接的建立包括两个步骤:首先要加载相应数据库的JDBC驱动程序;然后建立连接。

3. 详细设计

3.1 主界面功能

该模块的主要功能为:使用户可以在一个界面下调用各功能模块。即放便用户使用又方便用户的学习,而且不但可以通过菜单栏调用各功能模块,还可以通过按钮调用,主界面主要由两个面版,四个按钮,一个文本框,一个文本区,一个标签和一个菜单栏组成。在文本框中输入要查询的数据。文本区中显示查询的结果。主要方法包括:DataWindow()为构造方法,创建用户添加词汇界面;与actionPerformed()为接口方法,处理ActionEvent事件。设计好的主界面去如图所示

3.2 英译汉功能

该模块的主要功能为:当用记遇到陌生的单词或记不清解释的单词时,用户可以通过本功能查找,还通过本模块完成单词的再一次记忆。此功能模块主要是针对已经存在于单词库中的单词,通过编辑菜单中的英汉词典功能,在主界面的文本框中输入要查询的单词,单击查询按钮进行查询。结果显示在主界面的文本区中。

3.3 汉译英功能

该模块的主要功能为:当用户进行汉译英翻译时难难免遇到不会的词或记不请的记。这时用记就可以通过本功能实现词汇的查找。它不但可以查到想要查的词还可以找到和该词相关的单词。

3.4数据库创建与连接

数据库表设计

打开控制面板选择:“管理工具”——“数据源(ODBC)”——“用户DNS”——“添加”选择相应的数据库驱动Microsoft Access Driver (*.mdb),数据源的

名称为english,然后选择数据库,确定。

建立JDBC—ODBC桥接器:

Class.forName()方法的执行,将创建数据库驱动的实例并注册到驱动管理器。在某种数据库的驱动程序加载后,就可以建立与该DBMS的连接了。定义如下: Class.forName(”sun.jdbc.odbc.JdbcOdbcDriver”);

创建数据库连接这个步骤中要使数据库驱动连接到相应的DBMS。连接的建立通过使用DriverManager类中的static方法getConnection(),该方法的定义如下

Con=DriverManager.getConnection(“jdbc:odbc:e nglish”,””,””);4. 主要程序源代码

class DataWindow extends JFrame implements ActionListener//子类继承父类事件监听器作为接口

{ JFrame topFrame;//声明窗口

JDesktopPane desktop;

FileDialog filedialog_save; //声明文件对话框

JTextField englishtext;//声明一个文本框

JTextArea chinesetext;// 声明一个文本区

JButton b1,b2,b3,b4;//定义按钮

JLabel label;//定义标签

JMenuBar mbar;

JMenu mfile,medit,mhelp;//菜单项

JMenuItem

edic,cdic,back_data,quit,addedit,modedit,deledit,hhelp,about;

DataWindow()//方法的创建

{

super("英汉小词典");//子类继承父类的构造方法

this.setBounds(250,250,600,400);

this.setVisible(true);

getContentPane().add(new JScrollPane(chinesetext));

mbar = new JMenuBar();

setJMenuBar(mbar);

mbar.setOpaque(true);

mfile = new JMenu("文件");//创建文件菜单

medit = new JMenu("编辑");

mhelp = new JMenu("帮助");

mbar.add(mfile);mbar.add(medit);mbar.add(mhelp);

edic = new JMenuItem("英汉词典");

cdic = new JMenuItem("汉英词典");

back_data = new JMenuItem("备份词库");

quit = new JMenuItem(" 退出");//文件菜单

addedit = new JMenuItem("添加词汇");

modedit = new JMenuItem("修改词汇");

deledit = new JMenuItem("删除词汇");//编辑菜单

mfile.add(edic);//将菜单项添加到菜单

mfile.add(cdic);

mfile.add(back_data);

mfile.addSeparator();

mfile.add(quit); //mfile

medit.add(addedit);

medit.add(modedit);

medit.add(deledit); //medit

mhelp.add(hhelp);

mhelp.add(about); //mhelp

edic.addActionListener(this);//将edic作为事件监听器添加到当前