用Java编译的电子词典(包含MySQL,词典为单独的一个窗口)
这个电子词典的代码主要包含连接调用数据库,建立窗口,向窗口里面加入面板,以及向面板里面加入组件
电子词典用的词汇表是MySQL里面建立的,所以写程序之前需要知道怎么用Java连接到MySQL, 首先你需要安装连接MySQL的驱动,下面先介绍的是eclipse装驱动的方法,然后介绍源代码
- 首先在eclipse里面建一个工程,然后用鼠标右键单击这个工程新建一个Folder,命名为lib,然后你就会发现工程下面有一个lib文件,右键单击lib将你事先下载好的驱动复制到里面,如下图所示:
- 然后右键点击lib中复制进去的驱动选择Build Path然后在点击Add to Build Path即可,这样驱动就安装好了。
词典的源代码如下:
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class CiDian extends JFrame implements ActionListener {JTextField txf=new JTextField(30);//建一个文字输入框长为30JTextArea jt=new JTextArea(40,40);//建一个文本框JButton btn1=new JButton("查询");public CiDian(){Container container=getContentPane();container.setLayout(new GridLayout(2,2,10,10));//设置行、列、行间隙、列间隙JPanel a = new JPanel();//建一个面板a.setBorder(BorderFactory.createTitledBorder("请输入:"));//输入面板的名container.add(a);//向窗口里加一个面板a.add(txf);//向a面板里加入输入框a.add(btn1);//向a面板里加入按键btn1.addActionListener(this);//添加监听器 JPanel a1 = new JPanel();//建立一个面板//jt.setWrapStyleWord(true);a1.setBorder(BorderFactory.createTitledBorder("查询结果:"));//输入面板的名container.add(a1);a1.add(jt); }public void actionPerformed(ActionEvent e)//作为ActionListener类的构造函数,如果你的class implements ActionListenser, 那就必须得有这个,也可以单独写一个class,不过有点麻烦 { if(e.getSource()==btn1)//当按钮被点击的时候 { String tmp=this.txf.getText();//这个字符串的值是当前对象(窗口)中,文本框输入的值 String sql=null;//定义一个sqlStatement stmt=null;//定义一个stmt,用来建数据库连接的 sql="select * from cidian";//创建一个sql数据库语句,但它本身还是一个字符串 try{ Class.forName("com.mysql.jdbc.Driver");//或者:Class.forName("org.gjt.mm.mysql.Driver");//关联mysql数据库驱动 Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/chaxun?useSSL=false","root","123456"); stmt=conn.createStatement();//建立对象,用来发送sql语句到数据库 System.out.println("数据库连接成功");ResultSet result=stmt.executeQuery(sql);//运行语句并建立一个查询结果的集合 jt.setText("");//清空文本编辑区域 boolean b = false;//定义一个变量while(result.next())//while循环,当还有结果的时候,把所有查询结果添加加到文本编辑区域中 { String chinese=result.getString("chinese");//获取chinese这列数据String english=result.getString("english");//获取english这列数据if(tmp.equalsIgnoreCase(chinese)){//输入的汉字存在于表中则执行System.out.println(english);//输出对应的英文jt.setText(" 你查找的词的英文翻译是: "+english);//在文本框中显示对应的英文b=true;} }if(!b){//输入的词不存在System.out.println("你所查找的词找不到!");jt.setText("你所查找的词找不到!");} stmt.close();//关闭链接。 }catch(Exception eq){System.out.print("数据库了连接失败");} } }public void launchFrame(){this.setTitle("MrTian电子词典");//设置窗口标题this.setVisible(true);//显示窗口this.setSize(500,500);//设置大小this.setLocation(300, 300);//设置位置this.addWindowListener(new WindowAdapter(){ //设置一个关闭窗口的方法public void windowClosing(WindowEvent e) { System.exit(0);}});} public static void main(String[] args){CiDian f=new CiDian();f.launchFrame(); } }
运行结果如下图所示:
用Java编译的电子词典(包含MySQL,词典为单独的一个窗口)相关推荐
- JAVA 租车系统(包含Mysql数据库)
1.1管理员需求 管理员这边要能增删改查车辆信息,可以显示可租用的车辆和所有车辆信息,并且可以按照租金进行升序或者降序排列,对车型可以进行查询:车不够了还要及时向供应商进货,这里就涉及到供应商信息,管 ...
- java编译命令 Linux,通过命令行在linux中编译Java类
嗨,谢谢你花时间回答我的问题. 我的根文件夹中有两个文件(〜/).Main.Java和TestMain.java.Main.java编译并运行顺利.另一方面,TestMain没有.TestMain基本 ...
- Java判断字符串中是否包含中英文标点符号
Java判断字符串中是否包含中英文标点符号 /*** 该函数判断一个字符串是否包含标点符号(中文英文标点符号).* 原理是原字符串做一次清洗,清洗掉所有标点符号.* 此时,如果原字符串包含标点符号,那 ...
- 计算机毕业设计Java智能旅游电子票务系统演示录像2020(源码+系统+mysql数据库+lw文档)
计算机毕业设计Java智能旅游电子票务系统演示录像2020(源码+系统+mysql数据库+lw文档) 计算机毕业设计Java智能旅游电子票务系统演示录像2020(源码+系统+mysql数据库+lw文档 ...
- java计算机毕业设计医疗器械销售电子商城源程序+mysql+系统+lw文档+远程调试
java计算机毕业设计医疗器械销售电子商城源程序+mysql+系统+lw文档+远程调试 java计算机毕业设计医疗器械销售电子商城源程序+mysql+系统+lw文档+远程调试 本源码技术栈: 项目架构 ...
- 计算机毕业设计Java大学生健康电子档案系统(源码+系统+mysql数据库+lw文档)
计算机毕业设计Java大学生健康电子档案系统(源码+系统+mysql数据库+lw文档) 计算机毕业设计Java大学生健康电子档案系统(源码+系统+mysql数据库+lw文档) 本源码技术栈: 项目架构 ...
- 计算机毕业设计Java汇美食电子商城(源码+系统+mysql数据库+lw文档)
计算机毕业设计Java汇美食电子商城(源码+系统+mysql数据库+lw文档) 计算机毕业设计Java汇美食电子商城(源码+系统+mysql数据库+lw文档) 本源码技术栈: 项目架构:B/S架构 开 ...
- java毕业生设计电子商城系统计算机源码+系统+mysql+调试部署+lw
java毕业生设计电子商城系统计算机源码+系统+mysql+调试部署+lw java毕业生设计电子商城系统计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B/S架构 开发语言: ...
- 【java毕业设计】基于javaEE+SSH+mysql+strust2的超市积分管理系统设计与实现(毕业论文+程序源码)——超市积分管理系统
基于javaEE+SSH+mysql+strust2的超市积分管理系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于javaEE+SSH+mysql+strust2的超市积分管理系统设计 ...
最新文章
- Innodb Buffer Pool的三种Page和链表
- mysql dcn_Mysql varchar(max)
- Windows开启SNMP服务----Win7
- UWP ListView 绑定 单击 选中项 颜色
- mysql数据库第五章_第五章 数据库的查询
- Golang系列(三)之并发编程
- 【C#】使用DWM实现无边框窗体阴影或全透窗体
- 如何在github上找到自己想要的代码_如何在 GitHub 上找到免费且实用的软件?
- windows server 安装php环境
- hadoop namenode启动失败
- 深入java虚拟机(圣思园)
- 帮助用户连接网络打印机工具
- (译)《科学美国人》:多样的人际网络导致繁荣的本地经济
- 【业务安全-01】业务安全概述及测试流程
- adb双击POWER键指令
- 学生党白嫖服务器-不会吧不会吧,你还在买学生机吗?
- python day003_int/str/bool/for循环
- 《清单革命》内容梳理随笔
- 计算机网络部分复习题
- 诺康得NKD完成500万天使轮融资,专注于糖化学细胞治疗
热门文章
- could not open Java\jre7\lib\amd64\jvm.cfg解决方案
- 2022DASCTF MAY 魔法浏览器
- 纯小白尝试TensorFlow篇一:组装电脑
- jeesite使用mysql8.0驱动配置
- 重庆邮电大学考研计算机科学与技术专业,重庆邮电大学计算机科学与技术研究生专业排名...
- 虚拟机VMware安装Ubuntu系统(一)——创建虚拟机
- Matlab 产生伪随机调相信号与伪随机信号
- oppoa7强制root,oppoa7强制重启
- python生成高斯(gauss)数据并保存为txt文件
- Ubuntu 自带的秒表 stopwatch