您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 电子词典_java课程设计
贵州大学实习报告专用纸英汉电子词典一、需求分析二十世纪后半叶,以电子计算机为代表的现代科学获得了突飞猛进的发展并迅速和人们的日常生活结合在一起。计算机技术的发展和进步也使电子语言词典的诞生成为可能。我们日常的学习生活中,常会遇到这样的问题:在工作时或在网上冲浪,或者电子邮箱中收到一封外国朋友发的英文E-mail,遇到某些陌生的单词,可又疲于去翻查厚重的英文字典时,电脑中所安装的英汉电子词典便成为了最为方便、快捷的选择。电子词典是一种多功能的词典类工具软件,它可以即时翻译,快速、准确、详细地查阅英文单词,或将中文单词进行英文翻译,使自己的知识面拓展得更宽、更广。尽管电子词典只有十来年的历史,但它却已经发展壮大,成为词典家族中具有旺盛生命力的一员。虽然目前它尚不足以取代传统词典,但在英语学习和教学中,由于它实用、快捷、准确、经济等特点,已经成为传统英汉词典的有力竞争者,并对传统的词典提出了挑战。本系统是一个采用MicrosoftAccess作为数据库,用JAVA作为开发工具的英汉电子词典,内有英汉词典、汉英词典和备份词库。它不仅可实现英译汉、汉译英的基本翻译功能,还可以让用户根据自己的需要添加、修改、删除词库,形成自己的词库。其功能结构图如图1.1所示:贵州大学实习报告专用纸2图1.1功能结构图功能模块说明:1、英译汉功能模块说明:可以实现对英文单词对中文单词的查询功能。用户文本框中输入要查询的英语单词。若该单词存在于词库中,则会在文件对话框中显示其词性及中文翻译;若该单词没有存在于词库中,则会弹出“警告”,说明“查无此词”;若没有输入直接点击“查询”,则会弹出“警告”,说明“查询对象不能为空”。2、汉译英功能模块说明:可以实现对中文单词对英文单词的查询功能。用户可在文本框中输入要查询的中文单词。若该单词存在于词库中,则会在文件对话框中显示一个或多个对应的英文;若该单词没有存在于词库中,则会弹出“警告”,说明“查无此词”;若没有输入直接点击“查询”,则会弹出“警告”,说明“查询对象不能为空”。3、备份词库功能模块说明:可以实现对现有词库的备份,可将当前词库存入用户所设置的任一位位置。4、添加词汇功能模块说明:可以实现对词库的添加。用户可自行输入所添加的单词及其解释,若添加的是词库中没有的单词,系统在添加成功后有提示“添加成功”;若添加的是词库中已有的单词,系统会弹出“警告”,说明“此词汇已存在”。5、修改词汇功能模块说明:可以实现对词库中已有单词的修改。用户可自行修改词库中的单词的解释,若输入单词不存在于词库中,系统会弹出“警告”,英语小词典文件编辑英汉词典汉英词典退出备份词库添加词汇删除词汇修改词汇贵州大学实习报告专用纸3说明“不存在此单词”。6、删除词汇功能模块说明:可以删除词库中已有的单词。用户可自行删除词库中已有的单词,在删除此单词的同时,其解释也会随之被删除,若输入单词不存在于词库中,系统会弹出“警告”,说明“不存在此单词”。7、其它功能模块说明:在帮助中有“帮助”与“关于”两项,“帮助”中有关于词典的功能说明,“关于”可显示版本信息。二、概要设计1、英语词典设计要求分析词典的主要功能,设计实现如下功能:(1)实现程序GUI图形界面;(2)实现与词典数据库的访问;(3)实现文件的输入、输出;(4)实现鼠标或键盘事件响应模块。2、自定义类说明(1)publicclassDic{}自定义主体main函数的类,用来调用各种类(2)classDataWindowextendsJFrameimplementsActionListener{}自定义一个主窗体类,用来显示整个窗体。继承的父类:JFrame类实现的接口:ActionListener(3)classAddWinextendsJFrameimplementsActionListener{}自定义一个添加窗口类,用于添加新的单词及其解释(4)DelWinextendsJFrameimplementsActionListener{}自定义一个删除窗口类,用于删除词库中所存在的单词及其解释(5)ModifyWinextendsJFrameimplementsActionListener{}贵州大学实习报告专用纸4自定义一个修改窗口类,用于修改词库中所存在的单词及其解释(6)classHelpFrameextendsJFrame{}自定义一个帮助窗口类,用不可编辑的文本域的窗体对该词典的功能做简要的说明3、界面设计思想创建窗体,设计菜单。定义菜单条JMenumfile(文件)、medit(编辑)、mhelp(帮助),菜单子项JMenuItemedic(英汉词典)、cdic(汉英词典)、back_data(备份词库)、quit(退出)、addedit(添加词汇)、modedi(修改词汇)、deledit(删除词汇)、hhelp(帮助)、about(关于)。通过add()方法将菜单子项添加到菜单中,并注册监听者。定义一个文件对话框filedialog_save,并为之增加适配器。自定义一个面板,实现GUI元素的布局。4、方法定义说明(1)定义方法actionPerformed(),内用if语句实现按钮监听:publicvoidactionPerformed(ActionEvente)(2)定义方法Listwords(),实现查询功能publicvoidListwords()throwsSQLException(3)定义方法删除(),实现删除功能publicvoid删除()throwsSQLException(4)定义方法添加(),实现添加功能publicvoid添加()throwsSQLException(5)定义方法修改(),实现修改功能publicvoid修改()throwsSQLException5、数据库说明Java数据库连接(JDBC)由一组用Java编程语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,使他们能够用纯JavaAPI来编写数据库应用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本系统采用的是Access数据库的连接方式,Access数据库使用ODBC直连方式如下:加载驱动程序:Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);与数据库建立连接:Stringurl=jdbc:odbc:Driver={MicroSoftAccessDriver贵州大学实习报告专用纸5(*.mdb)};DBQ=+application.getRealPath(/Data/ReportDemo.mdb);Connectionconn=DriverManager.getConnection(url,,);创建JDBCStatement对象:StatementstmtNew=conn.createStatement();注意:首先要配置数据源:控制面版-管理工具-数据源-系统DSN-添加-选择MicrosortAccessDrive(*.mdb)-完成-写个数据源名(随意)-选择-找到你的access文件-确定,接下来再进行你的操作。三、详细设计本系统是通过对类对象的引用,以及函数的调用实现类之间的连接的。创建窗体,GUI(标签,文本框,按钮),用add()方法加入容器,进而进行布局,用addActionListener()方法为按钮或者菜单条按钮注册事件监听者,通过监听者方法调用(事件源,处理代码)对按钮触发。1、添加功能的实现: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){贵州大学实习报告专用纸6ename=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、删除功能的实现:publicvoid删除()throwsSQLException{Stringcname,ename;try{Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);}catch(ClassNotFoundExceptione){}Con=DriverManager.getConnection贵州大学实习报告专用纸7(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);}贵州大学实习报告专用纸8}3、修改功能的实现: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();ResultS
本文标题:电子词典_java课程设计
链接地址:https://www.777doc.com/doc-77092 .html