一个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 ...
随机推荐
- Android TextView加下划线的几种方式
如果是在资源文件里: <resources> <</u></string> <string name="app_name">M ...
- Android 去掉TabLayout下的阴影,AppBarLayout下的阴影
开始还以为是TabLayout在高版本系统上的特殊表现呢,没有在意,UI提出说感觉不好看就查了一下,原来是在TabLayout放在AppBarLayout里面才有这样的效果,只需要对AppBarLay ...
- (转载)Mac下使用Android Studio 获取 SHA1和MD5
Mac下使用Android Studio 获取 SHA1和MD5 2015-08-10 15:38 1776人阅读 评论(1) 收藏 举报 分类: Android(14) 版权声明:本文为博主原创 ...
- SpringBoot学习笔记(14)----应用监控-HTTP方式
SpringBoot提供了三种应用监控的方式 通过HTTP(最简单方便) 通过JMX 通过远程shell 这里就是用最简单的方式来使用SpringBoot的应用监控 首先引入依赖,pom文件如下 &l ...
- Springboot设置跨域的三种方式
方式一(精细配置) 在需要跨域的整个Controller或者单个方法上添加@CrossOrigin注解 方式二(全局配置) @Configuration public class WebMvcConf ...
- C++ STL rope介绍----可持久化平衡树
大致介绍: rope这个东西,我刚刚知道这玩意,用的不是很多,做个简单的介绍. 官方说明:我是刘邦(我估计你是看不懂的). rope就是一个用可持久化平衡树实现的“重型”string(然而它也可以保存 ...
- finger---用于查找并显示用户信息
finger finger命令用于查找并显示用户信息.包括本地与远端主机的用户皆可,帐号名称没有大小写的差别.单独执行finger指令,它会显示本地主机现在所有的用户的登陆信息,包括帐号名称,真实姓名 ...
- C++ vector基本用法
转自金河http://www.cnblogs.com/wang7/archive/2012/04/27/2474138.html 1 基本操作 (1)头文件#include<vector> ...
- Maven项目的坐标GroupId和ArtifactId
GroupId和ArtifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找. GroupId一 ...
- 洛谷 P2049 魔术棋子
P2049 魔术棋子 题目描述 在一个M*N的魔术棋盘中,每个格子中均有一个整数,当棋子走进这个格子中,则此棋子上的数会被乘以此格子中的数.一个棋子从左上角走到右下角,只能向右或向下行动,请问此棋子走 ...