java實現(xiàn)單詞查詢小程序
本文實例為大家分享了Java單詞查詢小程序,供大家參考,具體內(nèi)容如下
1、任務簡介
本次分享的單詞查詢小程序是基于MySQL數(shù)據(jù)庫制作的,使用的詞匯表是我在博客《將Excel文件導入MySQL數(shù)據(jù)庫的方法》中講解的,首先我需要講解Java連接MySQL數(shù)據(jù)庫的方法,然后再給大家分享單詞查詢小程序。
2、Java連接MySQL數(shù)據(jù)庫的方法
1)要使用Java程序?qū)ySQL數(shù)據(jù)庫進行操作,首先需要建立它們之間的連接,關于連接驅(qū)動可以通過百度下載,下載解壓后可以得到一個jar包,將該包導入預先創(chuàng)建好的Java Project中,具體為右鍵點擊Java Project→New→Folder,文件名為lib,如下圖:
2)此時在該項目下會有l(wèi)ib文件夾出現(xiàn),將預先下載好的jar驅(qū)動包拖動到lib文件,此時會有如下顯示,點擊OK即可:
3)右鍵點擊Java Project→Build Path→Configure Build Path后進到如下界面:
4)點擊Add JARs然后將剛才的lib包下的jar包導入:
5)這些步驟弄完后Myeclipse程序左邊的Java Project如下顯示:
3、單詞查詢小程序
1)由于需要實現(xiàn)單詞查詢功能,所以需要使用到Scanner類獲取用戶通過控制臺的輸入,關于Scanner類在5.15-5.21的任務中已經(jīng)使用到了,關于其更詳細知識可以通過菜鳥教程進行學習;
2)MySQL數(shù)據(jù)庫中使用到的表為之前博客中創(chuàng)建的english表,在本程序中SQL語句使用select * from english獲取整張表的信息,但是不使用輸出語句將這些信息輸出;
3)此外還需要定義一個布爾型變量來判斷表中是否含有所查詢的單詞,若沒有則輸出提示信息“沒有收錄該詞”,還需要使用if語句判斷用戶輸入的單詞是否與表中第一列的相同,語句為if(s.equalsIgnoreCase(english)),若相同則輸出該單詞的英文、中文和助記方法;
4)程序代碼如下:
import java.sql.Connection;//導入java.sql包下的Connection類 import java.sql.DriverManager;//導入java.sql包下的DriverManager類 import java.sql.ResultSet;//導入java.sql包下的ResultSet類 import java.sql.SQLException;//導入java.sql包下的SQLException類 import java.sql.Statement;//導入java.sql包下的Statement類 import java.util.Scanner;//導入java.util包下的Scanner類 public class Test666{//類名 public static void main(String[] args){//程序主函數(shù) String driver="com.mysql.jdbc.Driver";//驅(qū)動程序名 String url="jdbc:mysql://localhost:3306/mysql";//URL指向要訪問的數(shù)據(jù)庫名mysql String user="root";//mysql配置時的用戶名 String password="root";//mysql配置時的密碼 while(true){//定義死循環(huán) try{//try代碼塊,當發(fā)生異常時會轉(zhuǎn)到catch代碼塊中 Class.forName(driver);//加載驅(qū)動程序 Connection con=DriverManager.getConnection(url,user,password);//DriverManager.getConnection方法連接mysql數(shù)據(jù)庫 if(con!=null&&!con.isClosed())//if語句的條件 System.out.println("請輸入需要查詢的單詞:");//輸出提示信息 Statement statement=con.createStatement();//創(chuàng)建statement類對象執(zhí)行SQL語句 Scanner in=new Scanner(System.in);//創(chuàng)建scanner,控制臺會一直等待輸入,直到敲回車結(jié)束 String s=in.nextLine();//用戶通過控制臺輸入單詞 String sql="select * from english";//使用SQL語句進行條件查詢 ResultSet rs=statement.executeQuery(sql);//ResultSet類用來存放獲取的結(jié)果 System.out.println("查詢結(jié)果如下所示:");//輸出提示信息 boolean b=false;//判斷表中是否含有輸入的詞 while(rs.next()){//while循環(huán),游標向下移動一行 String english=rs.getString("english");//獲取id這列數(shù)據(jù) String chinese1=rs.getString("中文1");//獲取name這列數(shù)據(jù) String chinese2=rs.getString("中文2");//獲取sex這列數(shù)據(jù) String help=rs.getString("助記");//獲取age這列數(shù)據(jù) if(s.equalsIgnoreCase(english)){//輸入單詞存在于表中則執(zhí)行 System.out.println(english+"\n"+chinese1+"\n"+chinese2+"\n"+help);//輸出對應單詞全部信息 b=true;//布爾型變量為true } } if(!b){//查不到該詞 System.out.println("沒有收錄該詞!");//輸出提示信息 } rs.close();//關閉流 con.close();//關閉流 }catch(ClassNotFoundException e){//當try代碼塊有異常時轉(zhuǎn)到catch代碼塊 System.out.println("對不起,未找到驅(qū)動!");//輸出提示信息 e.printStackTrace();//打印異常所在位置及原因 }catch(SQLException e){//當try代碼塊有異常時轉(zhuǎn)到catch代碼塊 e.printStackTrace();//打印異常所在位置及原因 }catch (Exception e){//當try代碼塊有異常時轉(zhuǎn)到catch代碼塊 e.printStackTrace();//打印異常所在位置及原因 }finally{ System.out.println("----------------------------------------");//分割線 } } } }
5)運行結(jié)果如下:
4、總結(jié)
通過本博客不僅可以學習Java連接MySQL數(shù)據(jù)庫的方法,還可以學習Java對數(shù)據(jù)庫中一些數(shù)據(jù)的基本操作,自制一個單詞查詢小程序,如果對您有幫助的話麻煩關注一下博主,后續(xù)我還會陸續(xù)把其他的學習成果進行分享。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
一文搞懂Java常見的三種代理模式(靜態(tài)代理、動態(tài)代理和cglib代理)
Java中常見的三種代理模式是靜態(tài)代理模式、動態(tài)代理模式和CGLIB代理模式,本文就來給大家詳細的講解一下這三種代理模式,感興趣的小伙伴跟著小編一起來看看吧2023-08-08SpringBoot+thymeleaf+Echarts+Mysql 實現(xiàn)數(shù)據(jù)可視化讀取的示例
本文主要介紹了SpringBoot+thymeleaf+Echarts+Mysql 實現(xiàn)數(shù)據(jù)可視化讀取的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-04-04

Java double轉(zhuǎn)BigDecimal的注意事項說明

JAVA 多態(tài)操作----父類與子類轉(zhuǎn)換問題實例分析

idea手動執(zhí)行maven命令的三種實現(xiàn)方式