搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
码创造者
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
webGL扫盲:Cesium.js,心心念念的地图框架库来了!_cesiumjs
2
斐讯N1刷OpenWRT并安装内网穿透服务实现远程管理旁路由_斐讯n1 旁路由 openwrt
3
Springboot计算机毕业设计快餐店微信扫码点餐小程序【附源码】开题+论文+mysql+程序+部署_扫码点餐用什么程序编写
4
centos7下openjdk11源码下载编译安装_openjdk11下载
5
Pthon绘制动漫(附turtle方法介绍)_海龟画图python代码动漫大全
6
玩转Mysql系列 - 第12篇:子查询(非常重要,高手必备)_mysql子查询语句
7
集赞免费领《新程序员》电子刊!_《新程序员001》电子书
8
队列——(c语言实现)_c语言实现队列
9
机器学习实战---朴素贝叶斯_朴素贝叶斯训练集测试集
10
深入浅出地理解傅里叶变换、语谱图(spectrogram)_spectrogram fft2
当前位置:
article
> 正文
流行开源数据库hsql_数据库操作开源jar
作者:码创造者 | 2024-07-27 10:56:47
赞
踩
数据库操作开源jar
前言:该文章只是简单介绍一下hsql的入门内容,如果想仔细了解的话,参考官方帮助文档最为有用。
修正添加了第四点。
一、简介:
hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议,如果你是使用Java编程的话,不凡考虑一下使用它,相对其他数据库来说,其体积小,才563kb。仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动,还有其他用户界面操作等内容。在Java开源世界里,hsql是极为受欢迎的(就Java本身来说),JBoss应用程序服务器默认也提供了这个数据库引擎。由于其体积小的原因,又是纯Java设计,又支持SQL99,SQL2003大部分的标准,所以也是作为商业应用程序展示的一种选择。请到以下地址下载hsql:
http://prdownloads.sourceforge.net/hsqldb/
二、使用hsql数据库:
1、hsql数据库引擎有几种服务器模式:常用的Server模式、WebServer模式、Servlet模式、Standlone模式、Memory-Only数据库。
2、最为常用的Server模式:
1)首先却换到lib文件夹下,运行java -cp hsqldb.jar org.hsqldb.Server -database.0 db/mydb -dbname.0 xdb
执行命令后,将会在db文件夹下创建一个数据库mydb,别名(用于访问数据库)是xdb,如果存在mydb数据库,将会打开它。
2)运行数据库界面操作工具:java -cp hsqldb.jar org.hsqldb.util.DatabaseManager
在Type选项里选上相应的服务器模式,这里选择HSQL Database Engine Server模式;Driver不用修改;URL修改为jdbc:hsqldb:hsql://localhost/xdb (主要这里xdb就是上面我们设置的别名);user里设置用户名,第一次登录时,设置的是管理员的用户名,password设置密码。然后点击Ok。
3)第一次运行数据库引擎,创建数据库完毕。好了,你可以打开db文件夹,会发现里面多了几个文件。
mydb.properties文件:是关于数据库的属性文件。
mydb.script:hsql主要保存的表(这里按hsql的说法是Memory表,就是最为常用的),里面的格式都是文本格式,可以用文本查看,里面的语句都是sql语句,熟悉sql语句的话,你也可以手动修改它。每次运行数据库引擎的话都是从这里加载进内存的。
mydb.lck表示数据库处于打开状态。
其他的请参看hsqldb包里的手册。
3、WebServer模式和Server运行模式基本一样,只是支持了Http等协议,主要用于防火墙,默认端口是9001。启动Server,java -cp hsqldb.jar org.hsqldb.WebServer ...剩余的和上面的一致。
4、Servlet模式可以允许你通过Servlet容器来访问数据库,请查看
hsqlServlet.java的源代码,和WebServer类似。
5、另一个值得思考的模式是
Standalone模式:不能通过网络来访问数据库,主要是在一个JVM中使用,那样的话,访问的速度会更加快。虽然文档里面提到主要是用于开发时使用,但是我们可以假设一下,该方法不需要一个引擎类的东西,而类似于打开文件的方式,返回一个Connection对象:
Connection c = DriverManager.getConnection("jdbc:hsqldb:file:mydb", "sa", "");
将会在当前目录找到mydb数据库相关文件,打开并返回一个Connection对象。该方式有点好处就是可以不使用引擎,在需要的时候操作数据。所以那些对数据库不是特别有要求的,但又需要一个操作数据库的方式的话,可以使用这种方法。对于那些不想额外在数据库引擎花费金钱的话,可以使用这种方法。但是不推荐使用该方法。记得Hibernate里SessionFactory可以使用openSession(Connecttion c)来获得一个Session对象的,因此,在测试或者实际应用的话都可以这样使用。
6、Memory-Only 数据库:顾名思义,主要是内存中使用,不用于保存数据。可以用于在内存中交换数据。
三、具体的链接与操作的话,和一般的JDBC操作一样。而相应的Server模式的话,连接地址主要你运行数据库界面操作工具时,在URL一栏时默认已经设好了,自己实习一下,对比其中参数。
四、实例:
在Windows下使用:
由于我们经常使用的是hibernate等orm工具作为数据层,所以很多时候对底层的sql都不再关注。通常我们都交由hibernate等工具来替我们管理数据库连接等内容,经常我们只需要学会运行数据库就足够了。
为了简化操作,我们可以创建一个bat脚本(runhsql.bat)该脚本只需要和hsql.jar在一起,我们通常使用的是server模式:
(1)runhsql.bat的内容:
start java -cp hsqldb.jar org.hsqldb.Server
(2)server.properties
server.database.0=db/appfuse1
server.dbname.0=appfuse1
server.database.1=db/appfuse2
server.dbname.1=appfuse2
运行runhsql.bat之后,将会在db文件夹下创建两个数据库文件,别名为appfuse1和appfuse2
相应的例子:hibernate.xml文件简单配置:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
<property name="hibernate.connection.url">jdbc:hsqldb:hsql://localhost/appfuse1</property>
<property name="hibernate.connection.username">sa</property>
<property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
<property name="show_sql">true</property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Drop and re-create the database schema on startup -->
<property name="hbm2ddl.auto">create</property>
</session-factory>
</hibernate-configuration>
对这篇文章有什么问题的话,请留言给作者。作者联系地址:
Sidney.J.Yellow@gmail.com
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/码创造者/article/detail/889914
推荐阅读
article
CMU
SDK
-
mosi
多
模态
数据
使用笔记(一)_cmu-
mosi
数据
集
下载
教程...
CMU
多
模态
数据
1
下载
数据
在
数据
及中包含了三个部分:highlevel,raw以及labels。highlevel是已...
赞
踩
article
git
舍弃
本地
代码
强制从远程库
更新
_
git
强行
更新
本地
代码
...
git
fetch --all // fetch所有分支上的内容,也可以选择只备份一部分内容
git
reset --ha...
赞
踩
article
数据
科学
的
应用场景:如何应用
大
数据
分析
解决实际
问题
...
本文深入探讨了
数据
科学
在实际
问题
中
的
应用,从背景介绍到核心概念,再到算法原理和代码实例,揭示了如何利用
大
数据
分析
助力企业...
赞
踩
article
《初窥“
思维
导图
”》
_
wps
画
流程图
...
Fphy 2005-08-03目录邂逅
思维
导图
fphy一、什么是
思维
导图
二、如何绘制
思维
导图
三、
思维
导图
的应用四、
思维
...
赞
踩
article
AI推介-大
语言
模型
LLMs
论文速览(
arXiv
方向):2024.03.05-2024.03.10—...
最近,人们对大型
语言
模型
(LLM)的知识编辑越来越感兴趣。目前的方法和评估仅仅探讨了实例级编辑,而 LLM 是否具备修改...
赞
踩
article
参加
了
十多个
面试
,
一个
offer
也没拿到...
为什么
?...
前几天
,
一个
小伙伴留言说:自己
面试
了
10多家企业
了
,
愣是没有拿到
一个
offer
,
究竟是哪里出
了
问题?这两天笔者抽空整理好...
赞
踩
article
centos
linux
引导
修复
_
Linux
的新世界...
最近在
Linux
圈,发生了一次大地震,主角就是大家熟知的CentOS。去年9月才发布的CentOS 8,明年年底就将戛然...
赞
踩
article
Python
里最强
的
Web
框架
,早就不是
Django
和
Flask
了_
python
搭建个人网站哪个性...
如果说要用
Python
进行 web 开发,我想你一定会告诉我 使用
Flask
或者
Django
再或者 torn...
赞
踩
article
STM32
自己
从零开始
实操
10
:
PCB
全过程_
stm32pcb
布线
...
铝电解电容走线必须正儿八经沿着电源电流方向走出来的粗走线。小电容可以不是正儿八经从电源处引出来的走线,可以采用就近原则,...
赞
踩
article
学习
Git
笔记汇总_
git
查看
更新记录...
主要是本人在
学习
Git
的一些
学习
笔记,以便方便回看,当然可能有错误在所难免,如有错误,请指正。谢谢!_
git
查看
更新...
赞
踩
article
Edge
页面无
标签
/空白
_
edge
不
显示
标签
页了...
edge
无页面
_
edge
不
显示
标签
页了
edge
不
显示
标签
页了 问题: ...
赞
踩
article
智能
车
竞赛
指南:从零到一,驶向
自动
驾驶
的未来_
智能
车
竞赛
入门...
智能
车
竞赛
,通常指的是基于嵌入式系统、传感器、图像识别等技术,设计并制作能够自主导航的模型
车
,在特定赛道上完成指定任务的...
赞
踩
article
CodeWave
智能
开发
平台
--
02
--
目标:文档快速阅读
--
02
新手入门
_网易数帆轻舟低
代码
平台
里...
本文是网易数帆
CodeWave
智能
开发
平台
系列的第03篇,主要介绍了基于
CodeWave
平台
文档的
新手入门
进行学习,并对...
赞
踩
article
1
小时上手
Alibaba
Sentinel
流控
安全组件...
1
小时上手
Alibaba
Sentinel
流控
安全组件
1
小时上手
Alibaba
Sentinel
流控
安全组件 ...
赞
踩
article
【内网穿透】如何本地搭建
Whisper
语音
识别
模型并配置公网地址
_
whisper
,
离线
镜像...
OpenAI开源的
Whisper
语音
转文本模型效果都说还不错,今天就给大家推荐 GitHub 上一个开源项目 Whi...
赞
踩
article
hsqldb
_
hsqldb
历史
版本
下载...
百科名片HsqldbHsqldb是一个开放源代码的JAVA数据库,其具有标准的SQL语法和JAVA接口,它可以自由使用和...
赞
踩
article
SQL
Server
常见面试题_
sql
server
运维面试题...
转自:https://blog.csdn.net/wugeek/article/details/79121189
sql
理...
赞
踩
article
EXT4
数据结构...
结构 ext4_inode 实际使用的超出最初 128 字节 ext2 inode 的字节数记录在每个 inode 的 ...
赞
踩
article
AI
学习手册_
ai
基础知识
...
所谓多模态(Multimodal),是指同时处理和理解多种类型数据的技术,这里的数据类型包括文本、图像、音频、视频等等。...
赞
踩
article
ElasticSearch
聚合
查询之桶
聚合
_
elasticsearch
桶
聚合
按天
分组
...
Terms Aggregation 根据字段项
分组
聚合
{ "query": { "term": { "teamCity...
赞
踩
相关标签
自然语言处理
pytorch
git 更新
Python
Java
React
人工智能
语言模型
LLM
深度学习
大模型
论文推送
面试
职场和发展
软件测试
程序员
功能测试
职场经验
单元测试
centos linux引导修复
python
嵌入式硬件
git
学习