java h2数据库_JAVA 项目中使用 H2 数据库

java h2数据库_JAVA 项目中使用 H2 数据库JAVA项目中使用H2数据库发布时间:2018-06-0815:43,浏览次数:823,标签:JAVA为什么要使用H2数据库H2数据库是可以嵌入到JAVA项目中的,因为只需要导入一个jar包即可,所以非常的方便。项目中导入H2将H2的jar包放到classpath里即可,我是用的maven,maven的配置如下com.h2databaseh2<version>1.4.1…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

JAVA 项目中使用 H2 数据

发布时间:2018-06-08 15:43,

浏览次数:823

, 标签:

JAVA

为什么要使用H2数据库

H2数据库是可以嵌入到JAVA项目中的,因为只需要导入一个jar包即可,所以非常的方便。

项目中导入H2

将H2的jar包放到classpath里即可,我是用的maven,maven的配置如下

com.h2databaseh2 <

version>1.4.192

版本我用的现在的最新版

然后需要修改JDBC的配置,主要是下面两个属性跟其他数据库(如MySQL)不同,其他都一样

org.h2.Driver

name=”connection.url”>jdbc:h2:tcp://localhost/~/test

上面jdbc:h2:tcp://localhost/~/test中的test是数据库的名字,H2默认如果数据库不存在的话,会自动创建一个数据库的。

我用的是hibernate,所以还要修改一下Dialect的配置

org.hibernate.dialect.H2Dialect

到这为止,项目里面就可以使用H2了。

使用WEB控制台管理H2数据库

建表、建数据的话,可以通过H2自带的WEB控制台来做(当然H2也提供命令行的方式)

WEB控制台可以通过命令行来启动,但为了方便,可以从H2官网上下载一个安装包,运行里面的bat文件直接启动。

H2\bin目录这是H2安装完以后bin目录下的内容,运行h2w.bat打开web控制台

H2 web控制台Login画面

点Connect

之后的玩法就跟其他数据库差不多了,可以点击下面的Sample SQL Script部分来感受一下建表和插入数据等,help

命令,可以显示所有的命令。关于命令的详细可以去H2官网里面看。

H2 控制台

关于H2 数据库的连接方式

连接H2数据库有以下方式

* 服务式 (Server)

* 嵌入式(Embedded)

* 内存(Memory)

还没太仔细研究,到目前的理解:

嵌入式的话,就是这个H2数据库只能给一个应用使用,连接是有排他机制的。当一个应用用嵌入式连接方式连接了以后,其他的应用就不能再连接了。

服务式的话,就跟MySQL、Oracle这种数据库差不多,服务器单独运行,可以多个客户端同时连接。

内存方式,顾名思义,数据仅保持在内存中

嵌入式和服务式主要体现在JDBC连接的URL方式不同,上面例子中给的是服务式的。

* 服务式 (Server)

jdbc:h2:tcp://localhost/~/test

* 嵌入式(Embedded)

jdbc:h2:~/test

* 内存式(Memory)

jdbc:h2:tcp://localhost/mem:test

这个不用记,在H2控制台的Login画面选择连接方式,就会生成不同的URL

链接:https://www.jianshu.com/p/5bcee8eb170c

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183022.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Django设置超时时间_中时区是哪个时区

    Django设置超时时间_中时区是哪个时区前言我们都知道时区,标准时区是UTC时区,django默认使用的就是UTC时区,所以我们存储在数据库中的时间是UTC的时间,但是当我们做的网站只面向国内用户,或者只是提供内部平台使用,我们希望存储在

    2022年7月31日
    7
  • 数组和链表的区别浅析

    数组和链表的区别浅析1.链表是什么链表是一种上一个元素的引用指向下一个元素的存储结构,链表通过指针来连接元素与元素;链表是线性表的一种,所谓的线性表包含顺序线性表和链表,顺序线性表是用数组实现的,在内存中有顺序排列,通过改变数组大小实现。而链表不是用顺序实现的,用指针实现,在内存中不连续。意思就是说,链表就是将一系列不连续的内存联系起来,将那种碎片内存进行合理的利用,解决空间的问题。所以,链表允许插入和删…

    2022年6月15日
    35
  • 2021年程序员平均工资_公司薪酬制度调查报告

    2021年程序员平均工资_公司薪酬制度调查报告根据中国互联网络信息中心(CNNIC)近日发布第47次《中国互联网络发展状况统计报告》。截至2020年12月,我国网民规模达9.89亿,较2020年3月增长8540万,互联网普及率达70.4%。截至2020年12月,我国在线教育、在线医疗用户规模分别为3.42亿、2.15亿,占网民整体的34.6%、21.7%。我国网上零售额达11.76万亿元,较2019年增长10.9%。其中,实物商品网上零售额9.76万亿元,占社会消费品零售总额的24.9%。截至2020年12月,我国网络购物用户规模达7.82亿,

    2022年10月11日
    2
  • JAVA日期格式化(Simpledateformat)

    Java日期格式化常用方法Java中Date类中的一些日期格式话方法都已过期,所以不推荐使用。一般格式化时,常用到这两个类:Calendar和SimpleDateFormat,使用方法如下:1.Calendar类Calendar类是abstract的,所以实例化方式得用静态方法:Calendarc=Calendar.getInstance();,此时的生成的实例依据的是当前系统时间;c.se…

    2022年4月17日
    554
  • 7-16 三天打鱼两天晒网 (15分) 中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?「建议收藏」

    7-16 三天打鱼两天晒网 (15分) 中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?「建议收藏」7-16 三天打鱼两天晒网 (15分)中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?输入格式: 输入在一行中给出一个不超过1000的正整数N。输出格式: 在一行中输出此人在第N天中是“Fishing”(即“打鱼”)还是“Drying”(即“晒网”),并且输出“in day N”。 输入样例1: 103…

    2022年8月18日
    19
  • 浅谈路径规划算法_rrt路径规划算法

    浅谈路径规划算法_rrt路径规划算法原文地址:http://theory.stanford.edu/~amitp/GameProgramming/1导言1.1算法1.2Dijkstra算法与最佳优先搜索1.3A*算法2启发式算法2.1A*对启发式函数的使用2.2速度还是精确度?2.3衡量单位2.4精确的启发式函数2.4.1预计算的精确启发式函数2.4.2线性精

    2022年8月23日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号