java实现单词查询小程序

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

java实现单词查询小程序

  2021-04-03 我要评论

1、任务简介

本次分享的单词查询小程序是基于MySQL数据库制作的,使用的词汇表是我在博客《将Excel文件导入MySQL数据库的方法》中讲解的,首先我需要讲解Java连接MySQL数据库的方法,然后再给大家分享单词查询小程序。

2、Java连接MySQL数据库的方法

1)要使用Java程序对MySQL数据库进行操作,首先需要建立它们之间的连接,关于连接驱动可以通过百度下载,下载解压后可以得到一个jar包,将该包导入预先创建好的Java Project中,具体为右键点击Java Project→New→Folder,文件名为lib,如下图:

2)此时在该项目下会有lib文件夹出现,将预先下载好的jar驱动包拖动到lib文件,此时会有如下显示,点击OK即可:

3)右键点击Java Project→Build Path→Configure Build Path后进到如下界面:

4)点击Add JARs然后将刚才的lib包下的jar包导入:

5)这些步骤弄完后Myeclipse程序左边的Java Project如下显示:

3、单词查询小程序

1)由于需要实现单词查询功能,所以需要使用到Scanner类获取用户通过控制台的输入,关于Scanner类在5.15-5.21的任务中已经使用到了,关于其更详细知识可以通过菜鸟教程进行学习;

2)MySQL数据库中使用到的表为之前博客中创建的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){//程序主函数
  String driver="com.mysql.jdbc.Driver";//驱动程序名
  String url="jdbc:mysql://localhost:3306/mysql";//URL指向要访问的数据库名mysql
  String user="root";//mysql配置时的用户名
  String password="root";//mysql配置时的密码
  while(true){//定义死循环
  try{//try代码块,当发生异常时会转到catch代码块中
   Class.forName(driver);//加载驱动程序
   Connection con=DriverManager.getConnection(url,user,password);//DriverManager.getConnection方法连接mysql数据库
   if(con!=null&&!con.isClosed())//if语句的条件
   System.out.println("请输入需要查询的单词:");//输出提示信息
   Statement statement=con.createStatement();//创建statement类对象执行SQL语句
   Scanner in=new Scanner(System.in);//创建scanner,控制台会一直等待输入,直到敲回车结束
   String s=in.nextLine();//用户通过控制台输入单词
   String sql="select * from english";//使用SQL语句进行条件查询
   ResultSet rs=statement.executeQuery(sql);//ResultSet类用来存放获取的结果
   System.out.println("查询结果如下所示:");//输出提示信息 
   boolean b=false;//判断表中是否含有输入的词
   while(rs.next()){//while循环,游标向下移动一行
   String english=rs.getString("english");//获取id这列数据
   String chinese1=rs.getString("中文1");//获取name这列数据
   String chinese2=rs.getString("中文2");//获取sex这列数据
   String help=rs.getString("助记");//获取age这列数据
   if(s.equalsIgnoreCase(english)){//输入单词存在于表中则执行
    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代码块有异常时转到catch代码块 
   System.out.println("对不起,未找到驱动!");//输出提示信息 
   e.printStackTrace();//打印异常所在位置及原因 
   }catch(SQLException e){//当try代码块有异常时转到catch代码块
   e.printStackTrace();//打印异常所在位置及原因 
   }catch (Exception e){//当try代码块有异常时转到catch代码块
   e.printStackTrace();//打印异常所在位置及原因
   }finally{
   System.out.println("----------------------------------------");//分割线 
   }
  }
 }
}

5)运行结果如下:

4、总结

通过本博客不仅可以学习Java连接MySQL数据库的方法,还可以学习Java对数据库中一些数据的基本操作,自制一个单词查询小程序,如果对您有帮助的话麻烦关注一下博主,后续我还会陆续把其他的学习成果进行分享。

您可能感兴趣的文章:

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们