一个HelloWorld版的MySQL数据库管理器的设计与实现(源码)
2011年,实习期间写了一个简单的数据库管理器。
今天,特意整理了下,分享给大家。
有兴趣的同学,可以下载源码,瞧瞧。
源码只有4个类:LoginGUI,DatabaseGUI,Record,MySQLModel。
1.LoginGUI
该类就是一个简单的登录窗口,输入用户名、密码、数据库路径,如果登录成功,跳转到管理界面。

2.DatabaseGUI
DatabaseGUI构造了管理器的核心管理界面,并响应用户事件。
功能主要有3个:
a.显示数据库列表和该数据库下的表列表。
b.查询并显示一个表的结构。
c.执行SQL查询,显示查询结果到表格中。

3.Record
Record是一个简单的实体类,封装了一个数据库和该数据库下的所有表名称。
// 数据库名称
private String database;
// 该数据库下的所有表的名称
private List<String> tables;
4.MySQLModel
封装了MySQL查询的一些信息。
// 查询连接
private Connection con;
// 查询语句
private String query;
// 查询结果集
private List<Record> records = new ArrayList<Record>();
实现细节
1.构造图形界面。
使用的是Java Swing,用的是JFrame、JButton、BorderLayout等最基本的用户界面和布局组件。
2.获得一个表的结构。
查询一个表的列信息,根据数据库元数据和结果集元数据来构造表的结构。
//数据库元数据
DatabaseMetaData dbmd = con.getMetaData();
//结果集
ResultSet rs = dbmd.getColumns(database, null, table, null);
//结果集元数据
ResultSetMetaData rsmd = rs.getMetaData();
3.执行查询结果。
根据sql语句,执行查询,把结果集填充到Table中。
总结
这个数据库管理器的确是HelloWorld版的,功能很简单,适合初学者。
有兴趣的,可以下载源码自己瞅瞅瞧瞧。
下载地址:http://download.csdn.net/detail/fansunion/6425881
原文参见:http://FansUnion.cn/articles/2609
一个HelloWorld版的MySQL数据库管理器的设计与实现(源码)的更多相关文章
- 一步步实现windows版ijkplayer系列文章之七——终结篇(附源码)
一步步实现windows版ijkplayer系列文章之一--Windows10平台编译ffmpeg 4.0.2,生成ffplay 一步步实现windows版ijkplayer系列文章之二--Ijkpl ...
- 21 BasicTaskScheduler基本任务调度器(一)——Live555源码阅读(一)任务调度相关类
21_BasicTaskScheduler基本任务调度器(一)——Live555源码阅读(一)任务调度相关类 BasicTaskScheduler基本任务调度器 BasicTaskScheduler基 ...
- MySQL数据库企业级应用实践(多实例源码编译)
MySQL数据库企业级应用实践(多实例源码编译) 链接:https://pan.baidu.com/s/1ANGg3Kd_28BzQrA5ya17fQ 提取码:ekpy 复制这段内容后打开百度网盘手机 ...
- springmvc拦截器入门及其执行顺序源码分析
springmvc拦截器是偶尔会用到的一个功能,本案例来演示一个较简单的springmvc拦截器的使用,并通过源码来分析拦截器的执行顺序的控制.具体操作步骤为:1.maven项目引入spring依赖2 ...
- MySQL安装(yum、二进制、源码)
MySQL安装(yum.二进制.源码) 目录 1.1 yum安装... 2 1.2 二进制安装-mysql-5.7.17. 3 1.2.1 准备工作... 3 1.2.2 解压.移动.授权... 3 ...
- Struts2SpringHibernate整合示例,一个HelloWorld版的在线书店(项目源码+详尽注释+单元测试)
Struts2,Spring,Hibernate是Java Web开发中最为常见的3种框架,掌握这3种框架是每个Java Web开发人员的基本功. 然而,很多初学者在集成这3个框架的时候,总是会遇到各 ...
- 一个基于php+mysql的外卖订餐网站(带源码)
订饭组 一个基于php+mysql的外卖订餐网站,包括前端和后台.源码地址 源码演示地址:http://dingfanzu.com 商家后台系统:http://dingfanzu.com/admin ...
- Linux 下编译Android-VLC开源播放器详解(附源码下载)
这两天需要做音视频播放相关的东西,所以重新找了目前android下的解码库.Android自带的解码库支持不全,因此很多第三方播放器都是自带解码器,绝大部分都是使用FFMpeg作为解码库.我11年的时 ...
- 2-14 MySQL初步认识,及CentOS6.8环境,源码方式安装MySQL
什么是数据库: 存放数据的仓库RDBMS-->(Relational Database Management System) 关系型数据库管理系统DBMS--->(Database Man ...
随机推荐
- LeetCode 190. Reverse Bits (算32次即可)
题目: 190. Reverse Bits Reverse bits of a given 32 bits unsigned integer. For example, given input 432 ...
- php 添加redis扩展
我主要是按照http://blog.163.com/fan_xy_qingyuan/blog/static/1889877482014111111283265/ 这篇博客来的,但是这篇博客里只有php ...
- js邮箱,汉字,数字 表单验证
//电子邮箱验证 function isEmail(str) { var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_ ...
- NetworkX-根据权重画图
load_data = sio.loadmat(load_path) #阈值处理 mat=np.array(load_data['R']) mat[mat<0]=0 mat[mat<0.4 ...
- Mojo For Chromium Developers
Overview This document contains the minimum amount of information needed for a developer to start us ...
- Site Isolation Design Document
This design document covers technical information about how Site Isolation is built. For a general ...
- PHP中比较有用的几个函数
php_check_syntax 这个函数可以用来检查特定文件中的PHP语法是否正确. highlight_string 当你想要把PHP代码显示到页面上时,highlight_string()函数就 ...
- spfile
1 让ORACLE自己主动从spfile启动 SQL> create spfile='/dev/vx/rdsk/vgora/lv_spfile' from pfile; SQL> sh ...
- codeforces248(div1) B Nanami's Digital Board
q次询问,每次询问能够对矩阵某一个值改变(0变1.1变0) 或者是查询子矩阵的最大面积,要求这个这个点在所求子矩阵的边界上,且子矩阵各店中全为1 用up[i][j]表示(i,j)这个点向上能走到的最长 ...
- Android之输入内容监听回车键【Editor】
2.输入内容时按下回车键时监听 username.setOnEditorActionListener(new OnEditorActionListener() { @Override public b ...