版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1?課程設計的目的Jav語言是當今流行的網(wǎng)絡編程語言,它具有面向對象、跨平臺、分布應用等特點,它貼近自然的語義,而且有利于軟件的維護和繼承。此次課程設計的目的在于鞏固所學Jav語言基本知識,增進Jav語言編輯基本功,掌握JDKEditplusEclipseJCreat等開發(fā)工具的運用,拓寬常用類庫的應用。使學生通過該教學環(huán)節(jié)與手段,把所學課程及相關知識加以融會貫通,全面掌握Java語言的編程思想及面向對象程序設計的方法,為今后從事實際工作打下豎實的基礎。設計方案論證2.1概要設計1系統(tǒng)功能描述該系統(tǒng)主要用于實現(xiàn)英漢互譯的功能,系統(tǒng)擁有己的數(shù)據(jù)庫,我們可以先選擇讓系統(tǒng)進行英譯漢,還是漢譯英,然后在查詢杠中輸入想要查詢的英文單詞或漢語意思,系統(tǒng)自動在數(shù)據(jù)庫中查找匹配記錄并給出對應的漢語意思或英文單詞,若在數(shù)據(jù)庫中沒有查找到匹配的記錄,則系統(tǒng)會彈出出錯提示。同時,系統(tǒng)還提供了添加、修改、刪除等功能,允許用戶自主的對系統(tǒng)數(shù)據(jù)庫進行添加、修改、刪除等操作,便于用戶建立自己的詞匯庫,簡便實用。2.1.2系統(tǒng)開發(fā)環(huán)境硬件環(huán)境CPU:Int(R)Core(TM)2DuoCPU(P74503GHz內(nèi)存:2(硬盤空間:250G軟件環(huán)境32位XI操作系統(tǒng)。JDI和Jcreat軟件環(huán)境。2.2詳細設計2.2.1程序流程圖功能模塊說明:英譯漢功能模塊說明:可以實現(xiàn)對英文單詞對中文單詞的查詢功能。用戶文本杠中輸入要查詢的英語單詞。若該單詞存在于詞庫中,則會在文件對話杠中顯示其詞性及中文翻譯;若該單詞沒有存在于詞庫中,則會彈出〃警告〃,說明〃查無此詞〃;若沒有輸入直接點擊〃查詢〃,則會彈出〃警告〃,說明〃查詢對象不能為空〃。漢譯英功能模塊說明:可以實現(xiàn)對中文單詞對英文單詞的查詢功能。用戶可在文本杠中輸入要查詢的中文單詞。若該單詞存在于詞庫中,則會在文件對話杠中顯示一個或多個對應的英文;若該單詞沒有存在于詞庫中,則會彈出〃警告〃,說明〃查無此詞〃;若沒有輸入直接點擊〃查詢〃,則會彈出〃警告〃,說明〃查詢對象不能為空〃。備份詞庫功能模塊說明:可以實現(xiàn)對現(xiàn)有詞庫的備份,可將當前詞庫存入用戶所設置的任一位位置。添加詞匯功能模塊說明:可以實現(xiàn)對詞庫的添加。用戶可自行輸入所添加的單詞及其解釋,若添加的是詞庫中沒有的單詞,系統(tǒng)在添加成功后有提示"添加成功〃;若添加的是詞庫中己有的單詞,系統(tǒng)會彈出〃警告〃,說明〃此詞匯己存在修改詞匯功能模塊說明:可以實現(xiàn)對詞庫中己有單詞的修改。用戶可自行修改詞庫中的單詞的解釋,若輸入單詞不存在于詞庫中,系統(tǒng)會彈出〃警告〃,說明〃不存在此單詞〃。刪除詞匯功能模塊說明:可以刪除詞庫中己有的單詞。用戶可自行刪除詞庫中己有的單詞,在刪除此單詞的同時,其解釋也會隨之被刪除,若輸入單詞不存在于詞庫中,系統(tǒng)會彈出〃警告〃,說明〃不存在此單詞〃。0)其它功能模塊說明:在幫助中有〃幫助〃與〃關于〃兩項,〃幫助〃中有關于詞典的功能說明,〃關于〃可顯示版本信息。2.2程序中自定義類說明表1動E中涉及的元件表2.2.3程序中主要方法說明定義方法actiPerformOd內(nèi)用i語句實現(xiàn)按鈕監(jiān)昕:publicvoidnCeriformed(AiCiVonte)定義方法刪除(),實現(xiàn)刪除功能publicVJOil除othrowsSQLException定義方法添加(),實現(xiàn)添加功能publicVo示加othrowsSQLException定義方法查詢,實現(xiàn)查詢功能publicv查詢othrowsSQLException設計結果與分析3.1程序運行結果經(jīng)過編譯、執(zhí)行后可看到運行界面如圖2所示圖2運行結果圖此時有兩個菜單選擇:庫存和采購操作。1庫存菜單它包含四個子菜單:英漢詞典、漢英詞典、備份詞庫及退出。打開該詞典時默認進入的是英漢詞典。如圖3所示:圖3庫存菜單示意圖英漢詞典:在文本杠中輸入要查詢的英文單詞,單擊〃查詢〃,英文單詞對應的中文解釋及其詞性便會出現(xiàn)在文件對話杠中,如圖4所示:如果所查單詞不存在于詞庫中,則會彈出〃警告〃,說明〃查無此詞〃,如圖5所示;如果是沒有輸入直接點擊〃查詢〃,則會彈出〃警告〃,說明〃查詢對象不能為空〃,如圖6所示:漢英詞典:在在文本杠中輸入要查詢的漢語意思,單擊〃查詢〃,對應的英文單i司便會出現(xiàn)在文件對話杠中,如圖7所示:如果所查詞不存在于詞庫中,則會彈出〃警告〃,說明〃查無此詞〃;如果是沒有輸入直接點擊〃查詢〃,則會彈出〃警告〃,說明〃查詢對象不能為空〃,演示與英漢詞典類似。點擊備份詞庫時,會彈出保存文件對話框,此時可將詞庫拷貝到機算機里的任一位置。如圖8所示。2采購操作菜單:它包含三個子菜單:添加詞匯、修改詞匯和刪除詞匯。如圖9所示:圖9采購操作菜單示意圖添加詞匯:用戶可自行輸入所添加的單詞及其解釋,如果添加的是詞庫中沒有的單詞,系統(tǒng)在添加成功后有提示〃添加成功〃,如圖10所示。若添加的是詞庫中己有的單詞,系統(tǒng)會彈出〃警告〃,說明〃此詞匯己存在〃。如圖11所示。修改詞匯:用戶可自行修改詞庫中的單詞的解釋,如圖12所幣1如果輸入單詞不存在于詞庫中,系統(tǒng)會彈出〃警告〃,說明〃不存在此單詞〃,如圖13所幣。圖15刪除詞匯出錯示意圖經(jīng)測試,該系統(tǒng)各項功能均能使用,各個功能選項與設計所想相符。3.2尚需解決的問題(1)本系統(tǒng)雖然允許用戶根據(jù)自己的需求增減詞匯,保存自己的詞匯庫,但是卻無法做到批量導入。(2)發(fā)音問題,本系統(tǒng)還缺少比較重要的一項功能,詞匯的發(fā)音功能。查詢單詞時無法做到自動匹配,比如說輸入a時,無法自動尋找所有以a開頭的詞匯。設計體會此次課程設計過程中,我遇到了很多問題,也更加了解JAVAJav是一種網(wǎng)絡語言,使Jav程序能在網(wǎng)絡的任何地方運行,Jav解釋器生成與體系結構無關的字節(jié)碼結構的文件格式。Jav為了做到結構中立,除生成機器無關的字節(jié)碼外,還制定了完全統(tǒng)一的語言文本,如Jav的基本數(shù)據(jù)類型不會隨目標機的變化而變化,一個整型總是32位,一個長整型總是64位。為了使Java的應用程序能不依賴于具體的系統(tǒng),Java語言環(huán)境還提供了用于訪問底層操作系統(tǒng)功能的類組成的包,當程序使用這些包時,可以確保它能運行在各種支持Java的平臺上。通過對JAVA數(shù)據(jù)庫編程的更多的了解,我也獲得了一些調(diào)試的經(jīng)驗:通過層層的捕獲異常來得知錯誤的發(fā)生。在課程設計中出現(xiàn)的問題對我而言是學習與復習的好機會,是它們使我學會了如何自學、如何查閱資料等,讓我學習了很多,也讓我對舊的知識點有了更深的理解。在這不斷的調(diào)試、改動的過程中也讓我明白了養(yǎng)成良好編程習慣的益處。由于編寫程序時容易出錯,因此我采用了單個模塊單個功能進行調(diào)試與測試的方法。在不斷的出錯與改錯的過程中,我學到了很多關于編程和調(diào)試程序的知識,使自己的知識體系得到了一定的完善,也使我對平時所學有了很多的了解與更深的理解。面對一系列的問題,失敗了嘗試,再失敗再嘗試……通過這次的實踐,我發(fā)現(xiàn)了自己在編程及對軟件開發(fā)相關知識的不足,在以后的學習實踐中,我要取長補短,敢想、善間,不斷加強自身在專業(yè)知識方面的能力,為以后的學習與工作打下豎實的基礎。參考文獻[1]葉核亞?JAVA2程序設計實用教程[M](第2版).北京:電子工業(yè)出版社;2008.4[2]陳國君、陳磊、陳錫禎、劉洋.Java2程序設計基礎[M],第一版?北京:清華大學出版社,2006:324-337[3] 丘仲潘.Java游戲編程[M].北京:科學出版社,2004.6:125-132[4] 張大治.Java程序設計實用教程[M].北京:清華大學出版社,2008.4:72-81[5]6?附錄importjava.awt.*;import.*;importjava.sql.*;importjava.awt.event.*;importjavax.swing.*;ImportJava.io.*;importsun.audio.*;importjavax.swing.JOptionPane;classDataWindowextendsJFrameimplementsActionListener{JFrametopFrame;JDesktopPanedesktop;FileDialogfiledialog_save;//聲明文件對話框JTextFieldenglishtext;JTextAreachinesetext;JButtonbl,b2,b3,b4;JLabellabel;JMenuBarmbar;JMenumfile,medit;JMenulEmedic,cdic,back_data,quit,addedit,modedit,deledit,about;DataWindow(){super("英漢小詞典“);this.setBounds(250,250,600,400);this.setVisible(true);getContentPane().add(newJScrollPane(chinesetext));mbar=newJMenuBar();setJMenuBar(mbar);mbar.setOpaque(true);mfile=newJMenu(“庫存”);medit=newJMenu("采購操作);mbar.add(mfile);mbar.add(medit);edic=newJMenuItjm("英漢詞典);cdic=newJMenuItjm("漢英詞典);back_data=newJMenuItem("備份詞庫");quit=newJMenuItjm("退出');//文件菜單addedit=newJMenuItjm("添力加‘);modedit=newJMenuItem("修改');deledit=newJMenuItjm("刪除');/編輯菜單about=newJMenuItem("關于..〃);/幫助菜單mfile.add(edic);mfile.add(cdic);mfile.add(back_data);mfile.addSeparator();mfile.add(quit);//mfilemedit.add(addedit);medit.add(modedit);medit.add(deledit);//meditedic.addActionListener(this);cdic.addActionListener(this);quit.addActionListener(this);addedit.addActionListener(this);modedit.addActionListener(this);deledit.addActionListener(this);about.addActionListener(this);englishtext=newJTextField(16);englishtext.setFont(newFont("",15,15));chinesetext=newJTextArea(8,15);chinesetext.setEditable(false);chinesetext.setFont(newFont("",25,25));bl=newJButton("查詢");b2=newJButton("添加“);b3= newJButton(”修改');b4=newJButton("刪除");JPanelp1=newJPanel(),p2=newJPanel();〃添加面板label=newJLabel("輸入要查詢的英語單詞);label.setFont(newFont("隸書〃,20,20));p1.add(label);pl.add(englishtext);pl.add(bl);p2.add(b2);p2.add(b3);p2.add(b4);this.add(pl,"North");this.add(p2,"South");this.add(newJScrollPane(chinesetext),”enter");bl.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);englishtext.addActionListener(this);back_data.addActionListener(this);filedialog_save=newFileDialog(this,〃保存文件對話框FileDialog.SAVE);filedialog_save.addWindowListener(newWindowAdapter。//對話框增加適配器{publicvoidwindowClosing(WindowEvente)}filedialog_save.setVisible(false);});addWindowListener(newWindowAdapter。{publicvoidwindowClosing(WindowEvente){ System.exit(O);}});publicvoidactionPerformed(ActionEvente)//實現(xiàn)按鈕監(jiān)昕{if(e.getSource()==bllle.getSource()==englishtext){chinesetext.setText("");if(englishtext.getText().equals(“”)){JOptionPane.showMessageDialog(this,"查詢對象不能為空',"警告",JOptionPane.WARNING_MESSAGE);}else{try{Listwords();}catch(SQLExceptionee){}}}elseif(e.getSource()==b2lle.getSource()==addedit){AddWinadd=newAddWin();//AddWin是添加窗口的類}elseif(e.getSource()==b3||e.getSource()==modedit){ModifyWinmodi=newModifyWin();//ModifyWin是修改窗口的類}elseif(e.getSource()==b4||e.getSource()==deledit){DelWindel=newDelWin();//DelWin是刪除窗口的類}elseif(e.getSource()==edic)〃英漢{label.setText("輸入要查詢的英語單詞:";bl.setVisible(true);}elseif(e.getSource()==cdic)〃漢英{label.setText("輸入要查詢的漢語意思:";bl.setVisible(true);}elseif(e.getSourceO==back_data)//備份{Filefromfile=newFile("english\\english.mdb");FilelnputStreamfis=null;filedialog_save.setVisible(true);try{fis=newFileInputStream(fromfile);intbytesRead;〃定義變量來存儲輸入流中讀取出來的文件byte[]buf=newbyte[4*1024];//4KbufferFiletofile=newFile(filedialog_save.getDirectory(),filedialog_save.getFile());FileOutputStreamfos=newFileOutputStream(tofile);while((bytesRead二fis.read(buf))!=-1){fos.write(buf,O,bytesRead);}fos.flush();fos.close();fis.close();}catch(IOExceptione2){}}elseif(e.getSource()==quit)//退出{System.exit(0);}elseif(e.getSource()==about)//關于{finalStringAboutMsg="AElectricalDictionary1.0\n\n"+"Anapplicationwrittentoshowoffthefunctionofdictionary.\n\n”+"WrittenByEdith.\n\n”+"Copyright(c)2005byEdith.AllrightsReserved.";JOptionPane.showMessageDialog(topFrame,AboutMsg);}}publicvoidListwordsOthrowsSQLException//實現(xiàn)查詢功能{Stringcname,ename;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}Catch(ClassNotFoundExceptione){}〃建立橋接器ConnectionExlCon=DriverManager.getConnection("jdbc:odbc:Driver={MicroSoftAccessDriver(*.mdb)};DBQ=english'\\english.mdb",””,"");StatementExlStmt=ExICon.createStatement。;if(label.getText().equals("輸入要查詢的英語單詞:")){ResultSetrs=ExlStmt.executeQuery("SELECT*FROM表1");while(rs.next()){ename=rs.getString(“單詞”);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 糖尿病飲食中醫(yī)藥健康指導記錄
- 急性胃腸炎臨床治療流程及護理記錄模板
- 幼兒園班級值班排班表制作技巧
- 統(tǒng)編版五年級下冊古典名著知識點總結
- 中職汽車維修技能實訓指導
- 學生拖延行為干預家校合作指南
- 企業(yè)參觀心得體會撰寫技巧
- 阿膠對白頭翁免疫毒性影響-洞察及研究
- 零售店庫存盤點工作流程
- 風機軸承材料創(chuàng)新-洞察及研究
- 浙江省寧波市2024-2025學年第二學期期末九校聯(lián)考高二英語試題(含答案)
- 藥品庫房管理培訓
- 低壓作業(yè)實操科目三安全隱患圖片題庫
- 面部血管解剖講解
- 物業(yè)工程部維修工禮儀培訓
- 消化道早癌內(nèi)鏡診斷與治療
- WJ30059-2024軍工燃燒爆炸品工程設計安全規(guī)范
- 艾歐史密斯熱水器CEWH-50P5說明書
- T/CMES 37002-2022景區(qū)玻璃類游樂和觀景設施建造單位能力條件要求
- T/CATCM 029-2024中藥材產(chǎn)地加工(趁鮮切制)生產(chǎn)技術規(guī)范
- 2025至2030中國氯蟲苯甲酰胺行業(yè)應用狀況及未來前景展望報告
評論
0/150
提交評論