小巧数据库 Apache Derby 使用攻略
1. Derby 介绍
将目光放在小 Derby 的原因是纯绿色、轻巧、内存占用小,分分钟在你机子跑起来,自己做点需要连接数据库的代码实践非常方便。
虽然 Mysql 也可以,多一种选择,不是也挺好么?
Apache Derby是一个完全用 java 编写的数据库,Derby是一个Open source的产品。
Apache Derby非常小巧,核心部分derby.jar只有2M,既可以做为单独的数据库服务器使用,也可以内嵌在应用程序中使用。
官网下载地址:http://db.apache.org/derby/derby_downloads.html
官网文档地址: https://builds.apache.org/job/Derby-docs/lastSuccessfulBuild/artifact/trunk/out/getstart/index.html
点击进入版本中,注意查看 Build Environment 需要的条件,点击下载 zip 解压到随意目录即可。
你也可以不用下载,从JDK1.6 开始,derby 已经住进了 JDK 的大家庭,安装目录下面 db 文件夹就是小 derby,当然官网可以更自由的选择版本。
2. 稍稍配置下环境变量
Derby 基于 Java 编写,你机子上需要存在 Java JRE,具体安装和配置就不说了。
下面是 Derby 需要配置的的系统环境变量,配置环境变量是想让系统知道去哪找命令对应的执行程序。
当然你也可以不配置任何环境变量,直接切换到 derby 的安装目录下面找到 bin 文件夹,双击对应的服务。
Name: DERBY_HOME
Value: E:\Java\derby\db-derby-10.10.1.1-bin 在Path加入:%DERBY_HOME%\bin 在CLASSPATH加入:%DERBY_HOME%\lib \derby.jar;%DERBY_HOME%\lib\derbyclient.jar;%DERBY_HOME%\lib\derbytools.jar;%DERBY_HOME%\lib\derbynet.jar
切到 cmd 黑框下面,敲 sysinfo
至此,小巧的 Derby 已经成功安装在你的电脑上,是不是很快?骚年,可以进行折腾了。
3. Derby 操作和 Java 访问
a.创建数据库,并且进行连接(存在则连接,不存在创建后连接)
--内嵌模式
connect 'jdbc:derby:dedb;user=db_user1;password=111111;create=true'; --服务器模式
connect 'jdbc:derby://127.0.0.1:1527/debryDB;user=db_user1;password=111111;create=true';
b.新建系统用户表
create table t_user(uuid varchar(32), name varchar(10), age int, address varchar(40));
c.插入一些测试数据
insert into t_user values('B82A6C5244244B9BB226EF31D5CBE508', 'Miachel', 20, 'street 1');
insert into t_user values('B82A6C5244244B9BB226EF31D5CBE509', 'Andrew', 35, 'street 1');
insert into t_user values('B82A6C5244244B9BB226EF31D5CBE510', 'Orson', 47, 'street 1');
insert into t_user values('B82A6C5244244B9BB226EF31D5CBE511', 'Rambo', 19, 'street 1');
注意:操作 Derby 需要使用 ij 工具(和 oracle 的 plus 差不多),CMD 下面输入 ij 即可进入 ij 模式;
创建数据库的路径取决于你 CMD 的路径,如 C:\Users\Administrator> 下,创建的 Derby 数据库就在该目录下面;
如果你对 sql 比较熟悉的话,操作 derby 没有任何问题。
e.在 Java 程序中使用 Derby
import java.sql.*; public class DerbyTest {
private static String driver = "org.apache.derby.jdbc.EmbeddedDriver";
private static String protocol = "jdbc:derby:";
String dbName = "E:\\Users\\Workspaces\\Derby\\dedb"; public static void loadDriver() {
try {
Class.forName(driver).newInstance();
} catch (Exception e) {
e.printStackTrace();
}
} public void getDataFromDerby() {
try {
Connection conn = DriverManager.getConnection(protocol + dbName + ";user=root;password=root;create=true");
Statement statement = conn.createStatement();
ResultSet resultSet = statement.executeQuery("select * from t_user");
while (resultSet.next()) {
System.out.println(resultSet.getString(1));
System.out.println(resultSet.getString(2));
}
conn.close();
statement.close();
resultSet.close();
} catch (Exception e1) {
e1.printStackTrace();
}
} public static void main(String[] args) {
DerbyTest derbyTest = new DerbyTest();
loadDriver();
derbyTest.getDataFromDerby();
}
}
小巧数据库 Apache Derby 使用攻略的更多相关文章
- 小巧数据库 Derby 使用攻略
阅读目录 1. Derby 介绍 2. 稍稍配置下环境变量 3. Derby 操作和 Java 访问 回到顶部 1. Derby 介绍 将目光放在小 Derby 的原因是纯绿色.轻巧.内存占用小,分分 ...
- 【Apache运维基础(5)】Apache的Rewrite攻略(2)
简述 .htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录.作 ...
- 【Apache运维基础(4)】Apache的Rewrite攻略(1)
简述 Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言.可基于服务器级的(httpd.conf)和目录级的 (.htaccess)两种方式.如果要想用到rewrite模块 ...
- jsp 传值jsp 数据库 乱码解决的攻略 全套
jsp传值给jsp中文乱码 传值给数据库乱码的解决方法 所有的用到编码的所有统一utf-8 1.装mysql的时候有选择编码的界面的那个地方选utf-8编码 2 建数据库的时候选择 字符集 排序规则所 ...
- Flyway 助力数据库脚本自动化管理攻略
原文地址:梁桂钊的博客 博客地址:http://blog.720ui.com 欢迎关注公众号:「服务端思维」.一群同频者,一起成长,一起精进,打破认知的局限性. 今天,探讨一个有趣的话题:我们可以通过 ...
- linux下安装apache与php;Apache+PHP+MySQL配置攻略
1.apache 在如下页面下载apache的for Linux 的源码包 http://www.apache.org/dist/httpd/; 存至/home/xx目录,xx是自建文件 ...
- Apache服务器故障排除攻略
Apache服务器故障排除攻略 应用服务器Apache浏览器配置管理网络应用 随着网络技术的普及.应用和Web技术的不断完善,Web服务已经成为互联网上重要的服务形式之一.原有的客户端/服务器模式正 ...
- Oracle12c 性能优化攻略:攻略1-1:创建具有最优性能的数据库
一:章节前言 本章着眼于影响表中数据存储性能的数据库特性. 表的性能部分取决于在创建之前所应用的数据库特性.例如:在最初创建数据库时采用的物理存储特性以及相关的表空间都会在后来影响表的性能.类似地,表 ...
- Apache Derby数据库 安装、知识点
Apache Derby数据库 安装: 下载路径:http://archive.apache.org/dist/db/derby/ 出处:http://www.yiibai.com/hive/hive ...
随机推荐
- http 缓存相关学习
在面试中被问到好多缓存的问题 200 cache cookies 304(304 和 200 cache的区别) cookies在什么时候创建 发送 等等 自己回答的并不是很好 这次仔细的学习 ...
- 前端Demo常用库文件链接
<!doctype html><html><head> <meta charset="UTF-8"> <title>前端 ...
- Sublime Text 2 windows8安装插件失败解决
事件是这样的: 1.安装Package Control组件后, 2.调出Install Package选项安装插件,状态栏显示成功, 3.但打开Packages目录也看不到,Sublime插件管理也没 ...
- 【转】js 中导出excel 较长数字串会变为科学计数法
[转]js 中导出excel 较长数字串会变成科学计数法 在做项目中,碰到如题的问题.比如要将居民的信息导出到excel中,居民的身份证号码因为长度过长(大于10位),excel会自动的将过长的数字串 ...
- 用SourceTree合并工程冲突,工程打不开时的操作
1.右键工程 --> 显示包内容 2.打开project.pbxproj文件 3.command + F :搜索“<<<<<” 或“>>>> ...
- 协调者布局:CoordinatorLayout
layout_scrollFlag属性: scroll:需要哪个View滚动就需要设置该属性: exitUntilCollapsed:向上推动屏幕的时候滑动的部分折叠起来,只有下滑到最低端的时候折叠部 ...
- Android Material Design 兼容库的使用
Android Material Design 兼容库的使用 mecury 前言:近来学习了Android Material Design 兼容库,为了把这个弄懂,才有了这篇博客,这里先推荐两篇博客: ...
- [Unity游戏开发]向量在游戏开发中的应用(三)
本文已同步发表在CSDN:http://blog.csdn.net/wenxin2011/article/details/51088236 在上一篇博客中讲了利用向量点乘在游戏开发中应用的几种情景.本 ...
- W3School-CSS 定位 (Positioning) 实例
CSS 定位 (Positioning) 实例 CSS 实例 CSS 背景实例 CSS 文本实例 CSS 字体(font)实例 CSS 边框(border)实例 CSS 外边距 (margin) 实例 ...
- linux c++应用程序内存高或者占用CPU高的解决方案_20161213
对于绝大多数实时程序来说,实时处理相关程序中的循环问题所带来的对机器的损耗和自身的处理速度的平衡,以及与其他程序的交互以及对其他功能的影响难免会成为程序设计中最大的障碍同时也是最大的突破点. 在所有这 ...