本文实例为大家分享了Java单词查询小程序,供大家参考,具体内容如下
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对数据库中一些数据的基本操作,自制一个单词查询小程序,如果对您有帮助的话麻烦关注一下博主,后续我还会陆续把其他的学习成果进行分享。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。