文档章节

一个HelloWorld版的MySQL数据库管理器的设计与实现(源码)

FansUnion
 FansUnion
发布于 2015/05/03 01:31
字数 477
阅读 5
收藏 0

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

© 著作权归作者所有

FansUnion
粉丝 60
博文 858
码字总数 825464
作品 0
丰台
高级程序员
私信 提问
MySQL各版本的区别第一个MySQLCommunityServer,这个不要钱第二个MySQLE

MySQL各版本的区别 第一个 MySQL Community Server,这个不要钱! 第二个 MySQL Enterprise 这个要掏钱,不过可以打电话咨询问题,也就是电话技术支持。 第三个 MySQL Cluster,这个单独是没...

Airship
2015/01/15
0
0
MySQL各个版本的区别

MySQL 的官网下载地址:http://www.mysql.com/downloads/ 在这个下载界面会有几个版本的选择。 1. MySQL Community Server 社区版本,开源免费,但不提供官方技术支持。 2. MySQL Enterpris...

hisense20112784
2017/06/08
0
0
5本数据库经典之作,没看过的都白学了!

  【IT168 评论】1、 《数据库系统实现》   内容简介:书中对数据库系统实现原理进行了深入阐述,并具体讨论了数据库管理系统的三个主要成分――存储管理器、查询处理器和事务管理器的实...

it168网站
2017/11/13
0
0
写个准备读研的学弟的Java学习指南

java开发需要看的书籍 Java编程思想 深入理解Java虚拟机 Java多线程编程的艺术 HeadFirst设计模式 Java并发编程实践战 Spring实战第4版 深入浅出Mybatis原理技术与实战 Effective Java Java性...

u010570551
2017/06/11
0
0
LinuxPHP详解和mysql初探

浏览器只能够解码html格式的文档 动态网站是根据用户请求能做出对应响应甚至于对不同用户返回内容是不一样的 java:一直编译到处运行,是因为java的程序是在java的虚拟机中运行的,而底层系统...

GeniusLP
2017/11/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊Elasticsearch的CircuitBreakerService

序 本文主要研究一下Elasticsearch的CircuitBreakerService CircuitBreakerService elasticsearch-7.0.1/server/src/main/java/org/elasticsearch/indices/breaker/CircuitBreakerService.ja......

go4it
29分钟前
3
0
Spring系列教程六:AOP详细讲解

AOP 概述 什么是 AOP AOP:全称是 Aspect Oriented Programming 即:面向切面编程。 AOP技术是对OOP技术的一种延伸,AOP是面向纵向,OOP是面向横向。简单的说它就是把我们程序重复的代码抽取...

我叫小糖主
43分钟前
12
0
Qt编写数据可视化大屏界面电子看板9-曲线效果

一、前言 为了编写数据可视化大屏界面电子看板系统,为了能够兼容Qt4和嵌入式linux系统,尤其是那种主频很低的,但是老板又需要在这种硬件上(比如树莓派、香橙派、全志H3、imx6)展示这么华...

飞扬青云
今天
3
0
责任链模式

//这篇博客的博主真的不错,解析的都很清晰明了, https://blog.csdn.net/jason0539/article/details/45091639

南桥北木
今天
3
0
Flutter -------- dio网络请求

dio是Flutter中文网开源的一个强大的Dart Http请求库,支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载、超时等... 1.添加依赖# dependencies: dio: 2.1.x #...

切切歆语
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部