1、辽 宁 工 业 大 学JAVA程序设计 课程设计(论文)题目: 电子词典 院(系): 软件学院 专业班级: 软件工程 学 号: 学生姓名: 指导老师: 王彦华 老师职称: 助 教 起止时间:.6.18至.7.1程序设计专题(汇报)任务及评语院(系):软件学院 教研室:软件教研室学 号 学生姓名 专业班级软件工程 班程序设计(汇报)题目 电子词典程序设计(汇报)任务程序设计专题任务和要求:(1)掌握Java编程、面向对象基础知识。(2)较熟练地编写Java应用程序Application。(3)了解Java常见标准类库、编程技巧、异常处理。(5)联络已学过内容,巩固所学理论,增强独立工作能力。(6
2、)经过设计关键使学生有一个独立编写程序过程,对理论学习及动手能力全部有一个很大提升。(7)经过此次设计,深入培养学生热爱专业思想,同时对本专业综合素质提升起一个主动推进作用。课程设计过程中,要严格遵守实践步骤时间安排,听从指导老师指导。正确地完成上述内容,统计实习日志,规范完整地撰写出课程设计汇报。指导老师评语及成绩成绩: 指导老师签字: 年 月 日目 录第1章 课程设计目标和要求11.1 课程设计目标11.2 课程设计试验环境11.3 课程设计预备知识11.4 课程设计要求1第2章 课程设计内容22.1 背景介绍22.1.1 业务背景22.1.2 技术背景2第3章 需求分析33.1 现实状况
3、分析33.2 功效需求分析33.2.1系统总体功效介绍33.3 模块功效介绍33.3.1主界面功效33.3.2英译汉功效33.3.3汉译英功效33.3.4单词发音功效43.4 数据库需求分析43.5 系统数据步骤分析43.6 数据项6第4章 系统设计74.1 系统总体设计74.1.1系统功效模块设计74.2 系统具体设计84.2.1概念设计84.3 系统物理设计9第5章 系统实现105.1 算法方面问题105.2 字符串方面问题105.3 系统实现105.3.1主界面功效实现105.3.2英译汉功效实现125.3.3汉译英功效实现13第6章 课程设计总结14参考资料15第1章 课程设计目标和要
4、求 1.1 课程设计目标JAVA程序设计是计算机相关专业必修专业基础课程,其实践性、应用性很强。实践教学步骤是必不可少一个关键步骤。本课程程序设计专题实际是计算机相关专业学生学习完JAVA程序设计课程后,进行一次全方面综合训练,JAVA程序设计设计目标是加深对理论教学内容了解和掌握,使学生较系统地掌握程序设计及其在网络开发中广泛应用,基础方法及技巧,为学生综合利用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。1.2 课程设计试验环境硬件要求能运行Windows 9.X操作系统微机系统。JAVA程序设计语言及对应集成开发环境,J2SDK和ECLIPSE开发工具。1.3
5、课程设计预备知识熟悉JAVA语言及ECLIPSE开发工具。1.4 课程设计要求按课程设计指导书提供课题,要求学生在自行完成各个操作步骤,并能实现且达成举一反三目标,完成一个项目处理一类问题。要求学生能够全方面、深入了解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够很好地了解和掌握,能够进行简单分析和判定;能编写出含有良好风格程序;掌握JAVA程序设计基础技能和面向对象概念和方法;了解多线程、安全和网络等编程技术。同时培养学生进行分析问题、处理问题能力;培养学生进行设计分析、设计方法、设计操作和测试、设计过程观察、了解和归纳能力提升。第2章 课程设计内容2.1 背景介绍2.1.
6、1 业务背景电子引词典是一个将传统印刷词典转成数码方法、进行快速查询数字学习工具。电脑辞典以轻便易携、查询快捷、功效丰富等特点,成为二十一世纪学生学习生活、社会人士移动办公掌上利器。电脑辞典关键有五大板块功效,分别为:辞典查询学习功效、电子记事功效、计算功效、参考资料功效和数据传输功效。现在市场上电子辞典内置辞典有学习词典如英汉、雅思等,也有专业词典如电子、医药等。不一样消费者应依据自己实际情况选择最适合自己电子辞典,标准电子辞典内置英汉、汉英、英英、雅思、托福等学习型词典,是为大学、高初中和小学生量身定制学习辞典。2.1.2 技术背景我们在学习英语时候会常常碰到很多生词,有时,为了读懂一篇文
7、章,常常是读文章用一小时,不过其中却有半个小时全部在翻阅英语字典。所以我们小组为了处理这一问题,才将选材方向定在电子词典功效实现,关键目标就是为同学们处理这一问题。在做电子词典功效实现时候,关键从以下多个方面入手,即:英汉互译、汉英互译、单词发音。在英译汉、汉译英这两个功效模块上,我们首先提供了一个查询界面,即使用者需要输入要查询关键字,点击确定按钮,屏幕上就会出现其对应答案。在做这个模块时候,我们关键处理了JAVA和数据库链接问题,进而实现其功效。从系统可扩展性方面考虑,我们在系统中加入了对单词库添加、删除、修改功效。有了这个功效模块,将给使用者带来很大方便。当然也存在一个情况,即刚开始接触
8、而不知道怎样去使用电子词典,为此我们加入了帮助界面,帮助界面是用JAVA小程序完成。第3章 需求分析3.1 现实状况分析当今时代是信息化时代,而信息数字化也越来越被大家所重视,所以,数字化技术关键性也逐步表现了出来,关键表现在以下多个方面:数字化是数字计算机基础,数字化是软件技术基础,是智能技术基础,数字化是信息社会技术基础,数字化是信息社会经济基础。词典作为一个为大众服务工具书,已经逐步退居二线了,进而出现了另一个查找方法愈加简便,愈加正确,词汇量愈加丰富而且随身携带愈加方便工具,那就是电子词典,应该说这是一个新旧交替过程,电子词典替换传统词典只是时间问题。所以说电子词典发展前景是明朗,电子
9、词典生产厂家也如同雨后春笋般崛起了。3.2 功效需求分析3.2.1系统总体功效介绍本系统在单词查阅方面关键完成了英译汉、汉译英、单词发音功效;在系统性能方面关键完成了单词库插入、修改、删除功效和帮助系统。3.3 模块功效介绍3.3.1主界面功效该模块关键功效为:因为将组员所做各模块组合在一起。使用户能够在一个界面下调用组内组员功效模块。即放便用户使用又方便用户学习。而且不仅能够经过菜单栏调用各功效模块,还能够经过按钮调用。主界面关键由两个面版,五个按钮,一个文本框,一个文本区,一个标签和一个菜单栏组成。在文本框中输入要查询数据。文本区中显示查询结果。3.3.2英译汉功效该模块关键功效为:当用记
10、碰到陌生单词或记不清解释单词时,用户能够经过本功效查找,还经过本模块完成单词再一次记忆。3.3.3汉译英功效该模块关键功效为:当用户进行汉译英翻译时难难免碰到不会词或记不请记。这时用记就能够经过本功效实现词汇查找。它不仅能够查到想要查词还能够找到和该词相关单词。3.3.4单词发音功效该模块关键功效为:当用户进行英译汉查找时,想要知道单词发音时,就能够使用本功效模块。3.4 数据库需求分析现在电子词典应用很广泛,其体积小、价格低、实用性强,作为学习工具,有着很广泛市场。在以前,同学们学习英语时全部要用人工方法去查阅生词,不仅浪费了大量学习时间,学习效率无法提升。能够说,查阅英语生词成为了很多学习
11、英语同学在学习方面瓶径。电子词典出现,就是针对这一问题。这里设计就是实现英汉互译、单词发音,为了表现它可扩展性,使用者也能够自己添加、删除或修改其单词库。下面是数据库表设计: 表3.1 英语词汇表字段名字段类型长度备注单词TEXT50主键解释TEXT503.5 系统数据步骤分析数据步骤是数据采集、输入、处理、加工和输出全过程。信息原始数据经采集后,输入计算机系统,进行模式或统计运算,或按用户特殊要求编制某种专门程序来加工处理数据,然后输出结果数据。输出结果通常全部应说明或反应某一领域内客观事物自然属性特征和规律性。系统分析关键任务是将在系统具体调查中所得到文档资料集中到一起,对组织内部整体管理
12、情况和信息处理过程进行分析。它侧重于从业务全过程角度进行分析。分析关键内容是:业务和数据步骤是否通畅,是否合理;数据、业务过程和实现管理功效之间关系;老系统管理模式改革和新系统管理方法实现是否含有可行性等等。系统分析目标是将用户需求及其处理方法确定下来,这些需要确定结果包含:开发者相关现有组织管理情况了解;用户对信息系统功效需求;数据和业务步骤;管理功效和管理数据指标体系;新系统拟改动和新增管理模型等等。系统分析所确定内容是以后系统设计、系统实现基础。分析电子词典总体情况,划分系统边界,识别系统数据起源和去处,确定外部实体,得出系统顶层数据步骤图;然后划分出多个关键信息管理功效,本系统关键数据
13、工作流包含以下多个方面:(1) 英汉词典;(2) 汉英词典;(3) 备份词库;(4) 添加词汇;(5) 修改词汇; (6) 帮助;明确各功效之间联络,绘制出数据步骤图,以下图所表示: 开始 帮助输入英文单词翻译 汉语解释 结束 图3.1 英译汉数据步骤图开始 帮助输入汉语词汇翻译 英文单词 结束 图3.2 汉译英数据步骤图3.6 数据项数据项又称数据元素,数据项是组成数据最小单位,是数据统计中最基础、不可分有名数据单位。数据项能够是字母、数字或二者组合。经过数据类型(逻辑、数值、字符等)及数据长度来描述。数据项用来描述实体某种属性。本系统数据项定义以下: 表3.2系统数据项定义数据项名称数据项
14、含义说明别名数据类型长度取值范围英文单词用户需要输入英文单词无文本50英文字母汉语词汇用户需要输入汉语词汇无文本50汉字添加单词添加数据库中没有单词无文本50英文字母修改注释更新单词注释无文本50汉字,英文字母数据结构定义数据结构描述了一些数据项之间关系。一个数据结构能够由若干个数据项组成,也能够由若干个数据结构组成;还能够由若干个数据项和数据结构组成。数据结构名称:英文单词含义说明:用户需要输入英文单词 数据结构组成:由英文字母组成数据结构名称:汉语词汇含义说明:用户需要输入汉语词汇数据结构组成:由汉字组成数据结构名称:添加单词 含义说明:添加单词库中没有单词 数据结构组成:由英文字母组成数
15、据结构名称:修改注释 含义说明:更新单词注释数据结构组成:由汉字和英文字母组成第4章 系统设计4.1 系统总体设计4.1.1系统功效模块设计系统模块设计分为3大项,分别是:文件模块,编辑模块和帮助模块。1.文件模块:文件模块分为4小项:汉译英模块,汉译英模块,备份词库模块,退出系统模块。2.编辑模块:编辑模块分为3小项:添加词汇模块,添加词汇模块,删除词汇模块。3.编辑模块:编辑模块分为2小项,分别是:帮助模块,相关模块。下面是系统功效模块图:电子词典文件编辑帮助英汉词典汉英词典备份词库退出系统添加词汇修改词汇删除词汇 帮助 相关 图4.1 系统功效模块图4.2 系统具体设计4.2.1概念设计
16、对用户要求描述现实世界,经过对其中住处分类、聚集和概括,建立抽象概念数据模型。这个概念模型应反应现实世界各部门信息结构、信息流动情况、信息间相互制约关系和各部门对信息储存、查询和加工要求等。所建立模型应避开数据库在计算机上具体实现细节,用一个抽象形式表示出来。概念设计即是利用设计概念并以其为根本贯穿全部设计过程设计方法。概念设计是完整而全方面设计过程,它经过设计概念将设计者繁复感性和瞬间思维上升到统一理性思维从而完成整个设计。假如说概念设计是一篇文章,那么设计概念则是这篇文章专题思想。概念设计围绕设计概念而展开,设计概念则联络着概念设计方方面面。下面是各模块E-R图: 文件英译汉汉译英备份词库
17、退出 图4.2 文件模块子E-R图 编辑添加词汇修改词汇删除词汇 图4.3 编辑模块子E-R图 帮助帮助相关 图4.4帮助模块子E-R图4.3 系统物理设计数据库物理设计阶段任务是依据具体计算机系统(硬件等)特点,为给定数据库模型确定合理存放结构和存取方法。所谓“合理”关键有两个含义:一个是要使设计出物理数据库占用较少存放空间,另一个对数据库操作含有尽可能高速度。为了设计数据库物理结构,设计人员必需充足了解所用硬件内部特征;充足了解数据系统实际应用环境,尤其是数据应用处理频率和响应时间要求;充足了解外存放设备特征。数据库物理结构设计大致包含:确定数据存取方法、确定数据存放结构。物理结构设计阶段
18、实现是数据库系统内模式,它质量直接决定了整个系统性能。所以在确定数据库存放结构和存取方法之前,对数据库系统所支持事务要进行仔细分析,取得优化数据库物理设计参数。对于数据库查询事务,需要得到以下信息:1.要查询关系。2.查询条件(即选择条件)所包含属性。3.连接条件所包含属性。4.查询投影属性。对于数据更新事务,需要得到以下信息:1.要更新关系。2.每个关系上更新操作类型。3.删除和修改操作所包含属性。4.修改操作要更改属性值。5.确定数据库存放结构。6.确定系统存放参数配置。第5章 系统实现5.1 算法方面问题起初连接数据库语句全部全部是在调用页一句一句书写,这么一来不仅做了很多反复工作,而且
19、使页面看起来很繁琐,经过翻阅书籍发觉能够将连接数据库语句统一放到一个页面里,然后在需要调用连接数据库语句页面调用就能够了,这么既节省时间,又避免出现书写错误。5.2 字符串方面问题在测试数据查询模块时,发觉对字符串比较存在大小写之分,所以要先将要比较两个字符串转化成相同格式或强行限制输入字符串大小写相同,然后再进行比较;假如查询结果为空,那么应该给出提醒信息,这么才能真正做到人机界面友好。5.3 系统实现5.3.1主界面功效实现在此模块内,用户假如想使用组内其它组员功效时,有两种实现方法。一个是在编辑菜单下选择添加词汇;另一个是经过主界面下面按钮调用其它组员功效模块。主界面关键由主界面关键由两
20、个面版,五个按钮,一个文本框,一个文本区,一个标签和一个菜单栏组成。在文本框中输入要查询数据。文本区中显示查询结果。关键方法包含:DataWindow()为结构方法,创建用户添加词汇界面;和actionPerformed()为接口方法,处理ActionEvent事件。下面是部分程序源代码:import java.awt.*;import .*;import java.sql.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import sun.audio.*;import javax.swing.JOptionPa
21、ne;class DataWindow extends JFrame implements ActionListenerJFrame topFrame;JDesktopPane desktop;FileDialog filedialog_save;/申明文件对话框JTextField englishtext;JTextArea chinesetext;JButton b1,b2,b3,b4,b5;JLabel label;JMenuBar mbar;JMenuItem edic,cdic,back_data,quit,addedit,modedit,deledit,disport_mine,g
22、j,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.ad
23、d(disport);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(删除词汇);hhelp=new JMenuItem(帮助);about=new JMenuItem(相关.);/帮助菜单 图5.1主界面图5.3.2英译汉功效实现
24、此功效模块关键是针对已经存在于单词库中单词,经过编辑菜单中英汉词典功效,在主界面文本框中输入要查询单词,单击查询按钮进行查询。结果显示在主界面文本区中。下面是部分源代码/假如是调用语音文件,则读出单词else if(e.getSource()=b5)if(englishtext.getText()!=null)try/去该单词为语音文件名InputStream is=getClass().getResource(sound/+englishtext.getText().trim()+.wav).openStream();/播放语音文件AudioPlayer.player.start(is);c
25、atch(IOException e1)else if(e.getSource()=edic)/英汉label.setText(输入要查询英语单词:);b1.setVisible(true);b5.setVisible(true);else if(e.getSource()=back_data)/备份saveWin s=new saveWin();else if(e.getSource()=quit)/退出System.exit(0); 图5.2英译汉界面图5.3.3汉译英功效实现下面是部分源代码:/假如是调用语音文件,则读出单词else if(e.getSource()=b5)if(engl
26、ishtext.getText()!=null)try/去该单词为语音文件名InputStream is=getClass().getResource(sound/+englishtext.getText().trim()+.wav).openStream();/播放语音文件AudioPlayer.player.start(is);catch(IOException e1)else if(e.getSource()=edic)/汉英label.setText(输入要查询汉语意思:);b1.setVisible(true);b5.setVisible(true); else if(e.getSo
27、urce()=back_data)/备份saveWin s=new saveWin();else if(e.getSource()=quit)/退出System.exit(0); 图5.3汉译英界面图第6章 课程设计总结经过了两个星期时间,利用Java开发电子词典程序最终完成了。本程序是针对其相关企业现实状况分析以后,确定了程序包含领域,包含了界面设计、功效设计、数据库设计等,是一个含有实际应用意义程序。经过这次课题设计和实现,尽管碰到了很多很多难题,不过让我让我愈加受益是在这次课程设计中得到经验、心得和锻炼。这让我发觉编译程序过程其实就是不停处理问题过程,从中也感受到了编写软件乐趣,一个人永
28、远有学不完知识,就算开发软件各项知识全部学会了,但在实际开发过程中仍然会碰到不少问题,这是就要做到以下这两点:一个是“查”,另一个则是“问”。经过仔细查阅资料和问询老师和同学,最终处理了不少问题。这也是使我认识四处理问题首先依靠外界帮助,更关键是依靠自己能力。这次课程设计给我以前学过知识做了一个总结,为我深入学习编程做了铺垫。因为时间和其它方面原因,我设计程序只完成了多个关键功效实现,仍然存在着不少问题和缺点,比如说:用户界面设计不够美观,异常犯错处理功效比较差等多方面问题,这还需要在以后学习中加以改善,期望以后能够做更成功。参考资料1. 陈明 JAVA学教程 科技出版社 -32. 飞思科技产品研发中心 JAVA应用开发 电子工业出版社 -53. 方力钧 JAVA高手突破 清华大学出版社 -084. 乔林 JAVA应用技术 中国铁道出版社 -125. 张立科 实用JAVA应用学 人民邮电出版社 -096. 严蔚敏 JAVA第二版 清华大学出版社 -077. 王珍玲 实用JAVA工程教程 高等教育出版社 -068. 李维 面向对象开发实践之路 电子工业出版社 -049. 谭浩强 JAVA程序设计第二版 清华大学出版社 -0210. 周苏 JAVA工程学教程 科学出版社 -11