Java课程设计英汉词典.docx
《Java课程设计英汉词典.docx》由会员分享,可在线阅读,更多相关《Java课程设计英汉词典.docx(16页珍藏版)》请在冰豆网上搜索。
Java课程设计英汉词典
浙江科技学院
实验报告
课程名称:
Java面向对象课程设计
学院:
信息与电子工程学院
专业班:
计算机科学与技术专业133班
组员:
包云高、朱立生、严亮
指导教师:
向坚
2015年7月
电子词典
1.课程设计的目的
本课程设计利用Java编程开发语言,设计一个电子词典,该词典主要支持用户查询需求,实现英汉互译功能,支持用户自定义词库,能够使用户对词库进行操作,以便用户获得更多资料。
通过设计这个小词典,将课堂所学应用于实际生活中,学会运用面向对象开发语言进行简单程序的设计,与此同时也加强了对JavaSwing和JavaAwt包的使用和对Java相关知识的巩固。
本课程设计也使用了MSAccess数据库做数据持久化,不仅丰富了电子词典的内容,同时也加深了对数据库的相关知识的深入了解,这种跨学科的综合设计,锻炼了自己的编程和综合运用知识的能力,为以后的发展打下了良好基础。
2.设计方案论证
2.1项目开发背景
近几年来外语学习已经变为一种潮流,越来越多的中小学生拥有自己的电子词典。
现在的数字电子词典容量不断增大,已发展到可以自由扩充词库,或者从网上下载词库,对词典进行自动更新。
电子词典的功能的需求也越来越强大,作为一个计算机专业的学生,希望根据英语学习者的需求来设计一个实用电子词典,以帮助英语学习者们更方便快捷的查询单词、记忆单词、有效自由的对词库进行管理和操作。
与此同时也提高一下自己对Java语言的运用和对程序的开发设计能力。
2.2系统需求分析
用户在使用电子词典的时候,有可能会使用到电子词典的查询功能,也有可能使用到对词库的更新功能。
通过对用户的需求分析,初步确定该系统的基本需求情况。
(1)用户在打开软件的时候,应该呈现一个友好的查询界面,便于用户操作。
(2)当用户需要查询的时候,软件将提供这个单词的所有信息。
(3)可以自定义单词,使用户可以自动扩充单词库,方便以后使用,并具有针对性。
2.2.1模块功能说明
(1)汉译英功能模块说明:
可以实现英文单词对中文词汇的查询功能。
当用户输入一个单词,用户可以单击查询按钮,显示这个单词的中文解释,解释出现在文本区。
(2)英译汉功能模块说明:
实现将中文词汇翻译成英语。
在查询栏中输入中文,点击查询,便出现它的英文解释。
(3)词库的更新模块:
此模块有增、删、改等功能。
可以根据自己需要,为词库添加相应的英文单词和汉语解释,或者对已有单词的词义进行补充、修改或删除。
2.2.2系统总体结构设计
图1系统功能框图
2.2.3系统功能流程图
图2修改功能函数流程图
图3添加功能流程图
2.2.4详细设计
(1)系统中有6个类
系统运行主类:
Dic.java
窗口主界面类:
DataWindow
添加单词类:
AddWin.java
修改单词类:
ModifyWin.java
删除单词类:
DelWin.java
(2)系统运行主类Dic的方法
Main():
程序入口,建立窗体类DataWindow的对象。
(3)窗口主界面类DataWindow的方法
DataWindow():
构造函数,安排界面布局,设置菜单项和工具按钮。
actionPerformed():
执行按钮动作事件。
Listwords();实现数据查询功能。
(4)添加单词类AddWin的方法
AddWin():
构造函数,安排界面布局,设置监听按钮。
actionPerformed():
执行按钮动作事件,调用添加()方法。
添加():
实现添加数据功能。
(5)修改单词类ModifyWin的方法
ModifyWin():
构造函数,安排界面布局,设置监听按钮。
actionPerformed():
执行按钮动作事件,调用修改()方法。
修改():
实现修改数据功能。
(6)删除单词类DelWin的方法
DelWin:
构造函数,安排界面布局,设置监听按钮。
actionPerformed():
执行按钮动作事件,调用删除()方法。
删除():
实现删除数据功能。
2.2.5UML图
2.3设计方法
2.3.1开发环境
Java开发工具(Javadevelopmentkit,JDK)是Sun公司所开发的一套Java程序开发工具软件,它是Sun公司的网站免费取得。
它与JDK的参考文件同样是编辑Java程序的必备工具。
在编写、编译和运行应用程序时用到eclipse。
2.3.2功能模块设计
图4程序主界面
(1)窗口功能说明
窗口共有3个主要部分:
菜单栏、显示栏。
菜单栏:
包括文件、编辑。
显示栏:
显示查询单词在词典中的所有解释。
(2)菜单说明
文件菜单:
包括英汉词典、汉语词典、退出功能。
编辑菜单:
包括添加词汇、修改词汇、删除词汇功能。
(3)工具栏说明
在向输入栏中输入英/中文单词,单击查询按钮,在显示栏中将会显示查找所对应词典中的所有解释。
(4)显示栏说明
显示用户所查询的词义。
右击将出现复制、粘贴等命令。
方便用复制到其它地方进行其它如打印、学习等操作。
2.4数据库设计
在开始设计电子词典之前,要做一些准备工作,在MicrosoftAccess2003中,建立一个数据库,数据库的名字为english数据库,其中包括一张表。
图5建立Accesss数据库
图6表的属性图
此英语单词表有两个属性值,分别是单词和解释。
其中单词字段为主键,保证输入不可以为空。
其类型都是文本类型。
其中,单词表示英文单词信息;解释代表汉语解释信息。
表1英语单词解释表
2.4.1使用JDBC连接数据库
JDBC是Java程序连接数据库的应用程序接口(API)。
JDBC是由一群类和接口组成,通过调用这些类和接口所提供的成员方法,我们可以连接各种不同的数据库,进而使用SQL命令对数据库进行查询、插入、删除、更新等操作。
Java程序包括Java小程序和应用程序,主要是根据JDBC方法实现对数据库的访问和操作。
完成的主要任务有请求与数据库建立连接;向数据库发送SQL请求;为结果集定义存储应用和数据类型;查询结果;错误处理;控制传输;提交关闭连接等操作。
2.4.2JDBC编程要点
(1)引用java.sql包:
importjava.sql.*;
(2)使用Class.forName()方法加载相应数据库的JDBC驱动程序。
Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver“);
(3)定义JDBC的URL对象。
(4)连接数据库。
Connections=DriverManager.getConnection(conURL);
(5)使用SQL语句对数据库进行操作。
(6)解除Java与数据库的连接并关闭数据库。
(7)常用的JDBC类有,DriverManage类,Connection类,Statement类,
PreparedStatement类,ResultSet类。
(8)使用数据库,直接连接access文件
建立ODBC连接首先要建立一个JDBC-ODBC桥接器,其方法是:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Class是Java.lang包中的一个类,通过调用它的静态方法forName就可以建立桥接器。
但建立桥接器时可能发生异常,因此要捕获这个异常:
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundExceptione){}
然后就是连接数据库了,这里要用到java.sql包中的Connection类声明一个对象,再用类DriverManager调用它的静态方法getConnection创建这个连接。
Con=DriverManager.getConnection("jdbc:
odbc:
Driver={MicroSoftAccessDriver(*.mdb)};DBQ=english\\english.mdb","","");
3.程序运行结果
图7文件菜单界面
文件菜单:
包括英汉词典、汉语词典、备份词库、退出功能。
当单击英汉词典时,主界面出现输入查询英语单词;单击汉语词典,显示输入要查询的汉语意思;单击退出,将退出操作;单击备份数据库,将对已有的数据进行备份,以便保证数据的安全。
图8英汉词典英译汉
英汉词典,可以实现英文单词对中文词汇的查询功能。
当用户输入一个单词,用户可以单击查询按钮,显示这个单词的中文解释,解释出现在文本区,但是输入不可以为空。
图9英汉词典汉译英
实现将中文词汇翻译成英语。
在查询栏中输入中文,点击查询,便出现它的英文解释。
图10编辑菜单界面
编辑菜单:
包括添加词汇、修改词汇、删除词汇功能。
可以扩充词库,按照自己的需要,完善词库,也可对原有的信息进行修改、补充等操作。
图11删除界面
单击主界面的删除按钮,出现删除界面,在输入单词栏中填上要删除的单词,然后单击提交按钮。
如果要退出,也可以点击取消,退出删除界面,回到主界面。
图12修改界面
单击主界面的修改按钮,出现修改界面,在输入单词栏中填上要修改的单词,下面写上它的汉语解释,然后单击提交按钮。
如果输入有误,也可以点击取消,退出修改界面。
图13添加单词界面
单击主界面的添加按钮,出现添加单词界面,在输入单词栏中填上要添加的单词,下面写上它的汉语解释,然后单击提交按钮。
如果输入有误或要退出,也可以点击取消,退出添加单词界面,回到主界面。
4.设计体会
通过本次设计,进一步深化了课堂上所学的知识,深刻理解了Java语言的重要概念及其面向对象的特点,熟练的应用面向对象的思想和设计方法解决实际问题。
巩固所学java语言基本知识,增进Java语言编辑基本功,掌握JDK、eclipse等开发工具的运用,拓展常用类库的应用,把所学课程及相关知识加以融会贯通。
除此之外,对于图形用户界面的设计,从课本的Awt包扩展到Swing包,利用Swing编程设计漂亮的图形用户界面,增加了一些新的的效果。
在此次设计中,预先设计的所有功能均能实现,而且执行效果较好。
但是,由于时间有限,此电子词典的功能还不够完善。
例如可以增加背单词功能,英文单词游戏等功能,由于时间和能力有限,其他功能待日后完善。
在此次课程设计中,自己解决问题的能力得到了提高。
由于课堂所学有限,不足以解决实际问题,所以在设计过程中遇到的问题,参阅了大量的书目和借助网络,再加上老师的指导,最终问题都得到了解决。
这为以后进行复杂的程序设计奠定了很好的基础,同时也培养了自己获得信息、总结信息,以及综合运用所学知识的能力。