ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:141.22KB ,
资源ID:6038410      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6038410.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java课程设计英汉电子词典编程.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java课程设计英汉电子词典编程.docx

1、java课程设计英汉电子词典编程Java课程设计英汉电子词典一、需求分析二十世纪后半叶,以电子计算机为代表的现代科学获得了突飞猛进的发展并迅速和人们的日常生活结合在一起。计算机技术的发展和进步也使电子语言词典的诞生成为可能。我们日常的学习生活中,常会遇到这样的问题:在工作时或在网上冲浪,或者电子邮箱中收到一封外国朋友发的英文E-mail,遇到某些陌生的单词,可又疲于去翻查厚重的英文字典时,电脑中所安装的英汉电子词典便成为了最为方便、快捷的选择。电子词典是一种多功能的词典类工具软件,它可以即时翻译,快速、准确、详细地查阅英文单词,或将中文单词进行英文翻译,使自己的知识面拓展得更宽、更广。尽管电子

2、词典只有十来年的历史,但它却已经发展壮大,成为词典家族中具有旺盛生命力的一员。虽然目前它尚不足以取代传统词典,但在英语学习和教学中,由于它实用、快捷、准确、经济等特点,已经成为传统英汉词典的有力竞争者,并对传统的词典提出了挑战。本系统是一个采用Microsoft Access作为数据库,用JAVA作为开发工具的英汉电子词典,内有英汉词典、汉英词典和备份词库。它不仅可实现英译汉、汉译英的基本翻译功能,还可以让用户根据自己的需要添加、修改、删除词库,形成自己的词库。其功能结构图如图1.1所示: 图1.1 功能结构图功能模块说明:1、英译汉功能模块说明:可以实现对英文单词对中文单词的查询功能。用户文

3、本框中输入要查询的英语单词。若该单词存在于词库中,则会在文件对话框中显示其词性及中文翻译;若该单词没有存在于词库中,则会弹出“警告”,说明“查无此词”;若没有输入直接点击“查询”,则会弹出“警告”,说明“查询对象不能为空”。2、汉译英功能模块说明:可以实现对中文单词对英文单词的查询功能。用户可在文本框中输入要查询的中文单词。若该单词存在于词库中,则会在文件对话框中显示一个或多个对应的英文;若该单词没有存在于词库中,则会弹出“警告”,说明“查无此词”;若没有输入直接点击“查询”,则会弹出“警告”,说明“查询对象不能为空”。3、备份词库功能模块说明:可以实现对现有词库的备份,可将当前词库存入用户所

4、设置的任一位位置。4、添加词汇功能模块说明:可以实现对词库的添加。用户可自行输入所添加的单词及其解释,若添加的是词库中没有的单词,系统在添加成功后有提示“添加成功”;若添加的是词库中已有的单词,系统会弹出“警告”,说明“此词汇已存在”。5、修改词汇功能模块说明:可以实现对词库中已有单词的修改。用户可自行修改词库中的单词的解释,若输入单词不存在于词库中,系统会弹出“警告”,说明“不存在此单词”。6、删除词汇功能模块说明:可以删除词库中已有的单词。用户可自行删除词库中已有的单词,在删除此单词的同时,其解释也会随之被删除,若输入单词不存在于词库中,系统会弹出“警告”,说明“不存在此单词”。7、其它功

5、能模块说明:在帮助中有“帮助”和“关于”两项,“帮助”中有关于词典的功能说明,“关于”可显示版本信息。二、概要设计1、英语词典设计要求分析词典的主要功能,设计实现如下功能:(1)实现程序GUI图形界面;(2)实现和词典数据库的访问;(3)实现文件的输入、输出;(4)实现鼠标或键盘事件响应模块。2、自定义类说明(1) public class Dic自定义主体main函数的类,用来调用各种类(2) class DataWindow extends JFrame implements ActionListener自定义一个主窗体类,用来显示整个窗体。继承的父类: JFrame类实现的接口: Act

6、ionListener(3) class AddWin extends JFrame implements ActionListener 自定义一个添加窗口类,用于添加新的单词及其解释 (4) DelWin extends JFrame implements ActionListener 自定义一个删除窗口类,用于删除词库中所存在的单词及其解释 (5) ModifyWin extends JFrame implements ActionListener 自定义一个修改窗口类,用于修改词库中所存在的单词及其解释 (6) class HelpFrame extends JFrame 自定义一个帮助

7、窗口类,用不可编辑的文本域的窗体对该词典的功能做简要的说明 3、界面设计思想创建窗体,设计菜单。定义菜单条JMenu mfile(文件)、medit(编辑)、mhelp(帮助),菜单子项JMenuItem edic(英汉词典)、cdic(汉英词典)、back_data(备份词库)、quit(退出)、addedit(添加词汇)、modedi(修改词汇)、deledit(删除词汇)、hhelp(帮助)、about(关于)。通过add( )方法将菜单子项添加到菜单中,并注册监听者。定义一个文件对话框filedialog_save,并为之增加适配器。自定义一个面板,实现GUI元素的布局。4、方法定义说

8、明 (1)定义方法actionPerformed(),内用if语句实现按钮监听:public void actionPerformed(ActionEvent e) (2)定义方法Listwords(),实现查询功能public void Listwords() throws SQLException (3)定义方法删除(),实现删除功能public void 删除() throws SQLException (4)定义方法添加(),实现添加功能public void 添加() throws SQLException(5)定义方法修改(),实现修改功能public void 修改() thro

9、ws SQLException 5、数据库说明Java数据库连接(JDBC)由一组用 Java 编程语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库使用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本系统采用的是Access数据库的连接方式,Access数据库使用ODBC直连 方式如下:加载驱动程序:Class.forName(sun.jdbc.odbc.JdbcOdbcDriver) ; 和数据库建立连接:String url=jdbc:odbc:Driver=MicroSoft A

10、ccess Driver (*.mdb);DBQ=+application.getRealPath(/Data/ReportDemo.mdb);Connection conn = DriverManager.getConnection(url,);创建JDBC Statement对象:Statement stmtNew=conn.createStatement() ;注意:首先要配置数据源: 控制面版-管理工具-数据源-系统DSN-添加-选择Microsort Access Drive(*.mdb)-完成-写个数据源名(随意)-选择-找到你的access文件-确定,接下来再进行你的操作。3、详

11、细设计 本系统是通过对类对象的引用,以及函数的调用实现类之间的连接的。创建窗体,GUI(标签,文本框,按钮),用add( )方法加入容器,进而进行布局,用addActionListener( )方法为按钮或者菜单条按钮注册事件监听者,通过监听者方法调用(事件源,处理代码)对按钮触发。1、添加功能的实现: public void 添加() throws SQLException String cname,ename; try class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(ClassNotFoundException e) Con = Dri

12、verManager.getConnection(jdbc:odbc:Driver=MicroSoft Access Driver (*.mdb);DBQ=englishenglish.mdb,); Stmt=Con.createStatement(); ResultSet rs=Stmt.executeQuery(SELECT * FROM 表1); boolean boo=false; while(boo=rs.next()=true) ename=rs.getString(单词); cname=rs.getString(解释); if(ename.equals(添加英语单词_文本条.ge

13、tText() JOptionPane.showMessageDialog(this,此词汇已存在!,警告, JOptionPane.WARNING_MESSAGE); break; if(boo=false) String s1=+添加英语单词_文本条.getText().trim()+,s2=+添加汉语解释_文本条.getText().trim()+; String temp=INSERT INTO 表1 VALUES (+s1+,+s2+); Stmt.executeUpdate(temp); JOptionPane.showMessageDialog(this,添加成功!,恭喜, JO

14、ptionPane.WARNING_MESSAGE); dispose(); Con.close();2、删除功能的实现: public void 删除() throws SQLException String cname,ename; try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(ClassNotFoundException e) Con = DriverManager.getConnection(jdbc:odbc:Driver=MicroSoft Access Driver (*.mdb);DBQ=englishenglis

15、h.mdb,); Stmt=Con.createStatement(); ResultSet rs=Stmt.executeQuery(SELECT * FROM 表1); boolean boo=false; while(boo=rs.next()=true) ename=rs.getString(单词); cname=rs.getString(解释); if(ename.equals(删除单词_文本条.getText() String s1=+删除单词_文本条.getText().trim()+String temp=DELETE FROM 表1 WHERE 单词=+s1;Stmt.exe

16、cuteUpdate(temp);JOptionPane.showMessageDialog(this,成功删除记录!,恭喜,JOptionPane.WARNING_MESSAGE);dispose();break; Con.close();if(boo=false) JOptionPane.showMessageDialog(this,不存在此单词!,警告, JOptionPane.WARNING_MESSAGE); 3、修改功能的实现: public void 修改() throws SQLException String cname,ename; try Class.forName(su

17、n.jdbc.odbc.JdbcOdbcDriver); catch(ClassNotFoundException e) Con = DriverManager.getConnection(jdbc:odbc:Driver=MicroSoft Access Driver (*.mdb);DBQ=englishenglish.mdb,); Stmt=Con.createStatement(); ResultSet rs=Stmt.executeQuery(SELECT * FROM 表1); boolean boo=false; while(boo=rs.next()=true) ename=r

18、s.getString(单词); cname=rs.getString(解释); if(ename.equals(修改英语单词_文本条.getText() String s1=+修改英语单词_文本条.getText().trim()+,s2=+修改汉语解释_文本条.getText().trim()+; String temp=UPDATE 表1 SET 解释=+s2+ WHERE 单词 = +s1; Stmt.executeUpdate(temp); JOptionPane.showMessageDialog(this,记录修改成功!,恭喜, JOptionPane.WARNING_MESSA

19、GE); dispose(); break; Con.close(); if(boo=false) JOptionPane.showMessageDialog(this,不存在此单词!,警告, JOptionPane.WARNING_MESSAGE); 4、实现按钮监听的实现: public void actionPerformed(ActionEvent e) if(e.getSource()=b1|e.getSource()=englishtext) chinesetext.setText(); if(englishtext.getText().equals() JOptionPane.s

20、howMessageDialog(this,查询对象不能为空!,警告, JOptionPane.WARNING_MESSAGE); else try Listwords(); catch(SQLException ee) else if(e.getSource()=b2|e.getSource()=addedit) AddWin add = new AddWin(); /AddWin是添加窗口的类 else if(e.getSource()=b3|e.getSource()=modedit) ModifyWin modi = new ModifyWin();/ModifyWin是修改窗口的类

21、else if(e.getSource()=b4|e.getSource()=deledit) DelWin del = new DelWin();/DelWin是删除窗口的类 else if(e.getSource()=edic) /英汉 label.setText(输入要查询的英语单词:); b1.setVisible(true); else if(e.getSource()=cdic) /汉英 label.setText(输入要查询的汉语意思:); b1.setVisible(true); else if(e.getSource()=back_data) /备份 File fromfil

22、e = new File(englishenglish.mdb); FileInputStream fis = null; filedialog_save.setVisible(true); try fis = new FileInputStream(fromfile); int bytesRead; /定义变量来存储输入流中读取出来的文件 byte buf = new byte4*1024; /4K buffer File tofile = new File(filedialog_save.getDirectory(),filedialog_save.getFile(); FileOutpu

23、tStream fos = new FileOutputStream(tofile); while(bytesRead = fis.read(buf)!=-1) fos.write(buf,0,bytesRead); fos.flush();fos.close();fis.close(); catch(IOException e2) else if(e.getSource()=quit) /退出 System.exit(0); else if(e.getSource()=about) /关于 final String AboutMsg = A Electrical Dictionary n n

24、 +An application written to show off the function of dictionary.n n +JAVA课程设计 杨汝洁nn +Copyright (c) 2008 by Edith.All rights Reserved.; JOptionPane.showMessageDialog(topFrame,AboutMsg); else if(e.getSource()=hhelp) /帮助 HelpFrame help = new HelpFrame(); help.setVisible(true); 5、实现查询功能的实现public void Li

25、stwords() throws SQLException / String cname,ename; try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(ClassNotFoundException e) String url=jdbc:odbc:English; /建立桥接器 Connection Ex1Con = DriverManager.getConnection (jdbc:odbc:Driver=MicroSoft Access Driver (*.mdb);DBQ=englishenglish.mdb,); Statem

26、ent Ex1Stmt = Ex1Con.createStatement(); if(label.getText().equals(输入要查询的英语单词:) ResultSet rs = Ex1Stmt.executeQuery(SELECT * FROM 表1); while( rs.next() ename = rs.getString(单词); cname = rs.getString(解释); if(ename.equals(englishtext.getText() chinesetext.append(cname+n); Ex1Con.close(); /关闭数据库 if(chin

27、esetext.getText().equals() JOptionPane.showMessageDialog(this,查无此单词!,警告, JOptionPane.WARNING_MESSAGE); else if(label.getText().equals(输入要查询的汉语意思:) ResultSet rs=Ex1Stmt.executeQuery(SELECT * FROM 表1 WHERE 解释 LIKE %+englishtext.getText()+%); while(rs.next() ename = rs.getString(单词); cname = rs.getStri

28、ng(解释); chinesetext.append(ename+n); Ex1Con.close(); /关闭数据库 if(chinesetext.getText().equals() JOptionPane.showMessageDialog(this,查无此单词!,警告, JOptionPane.WARNING_MESSAGE); 四、软件测试经过编译、执行后可看到运行界面如图4.1所示图4.1此时有三全菜单选择:文件、编辑、帮助1、文件菜单:它包含四个子菜单:英汉词典、汉英词典、备份词库及退出。打开该词典时默认进入的是英汉词典。如图4.2所示:图4.2(1)英汉词典:在文本框中输入要查询的英文单词,单击“查询”,英文单词对应的中文解释及其词性便会出现在文件对话框中,如图4.3所示:图4.3如果所查单词不存在于词库中,则会弹出“警告”,说明“查无此词”,如图4.4所示;如果是没有输入直接点击“查询”,则会弹出“警告”,说明“查询对象不能为空”,如图4.5所示: 图4.4 图4.5(2)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1