(2) jdbc:h2:tcp://localhost/ + 数据库路径 + 数据库名称

jdbc:h2:file:D:/Program Files (x86)/H2/bin/sea

jdbc:h2:tcp://localhost/D:/Program Files (x86)/H2/bin/test001

5、修改H2数据库密码

h2的用户名密码一般设置为 密码为空的sa用户

ALTER USER SA SET PASSWORD ‘’

二、数据导入导出


1、数据导出

CALL CSVWRITE(‘D:\Hadoop\H2\hello_world.csv’, ‘SELECT * FROM hello_world’);

2、数据导入

CREATE TABLE hello_world AS SELECT * FROM CSVREAD(‘D:\Hadoop\H2\hello_world.csv’)

3、数据插入

INSERT INTO hello_world SELECT * FROM CSVREAD(‘D:\Hadoop\H2\hello_world.csv’);

三、中文乱码解决


H2数据库导出CSV数据默认字符编码虽然是UTF-8,但是分隔符是 逗号

在导入的时候会中文乱码,解决办法是导出和导入时指定分隔符为 | ,字符编码为UTF-8

1、H2数据导入导出乱码处理

(1)新建测试表

DROP TABLE IF EXISTS TEST;

CREATE TABLE TEST(ID INT PRIMARY KEY,NAME VARCHAR(255));

INSERT INTO TEST VALUES(1, ‘Hello’);

INSERT INTO TEST VALUES(2, ‘World’);

INSERT INTO TEST VALUES(3, ‘乔丹’);

INSERT INTO TEST VALUES(4, ‘科比’);

INSERT INTO TEST VALUES(5, ‘艾佛森’);

INSERT INTO TEST VALUES(6, ‘麦迪’);

SELECT * FROM TEST

(2)指定编码导出表数据

CALL CSVWRITE(‘D:\Hadoop\H2\test.csv’, ‘SELECT * FROM TEST’, ‘charset=UTF-8 fieldSeparator=|’);

(3)删除测试表重新导入

先删除测试的数据表

DROP TABLE test

测试读取文件是否会发生乱码

CALL CSVREAD(‘D:\Hadoop\H2\test.csv’,‘id|name’, ‘charset=UTF-8 fieldSeparator=|’);

重新指定字符编码和文件分隔符导入表

CREATE TABLE test AS SELECT * FROM CSVREAD(‘D:\Hadoop\H2\test.csv’,‘id|name’, ‘charset=UTF-8 fieldSeparator=|’);

(4)验证查询

重新导入后中文显示正常

SELECT * FROM TEST

2、H2函数处理中文乱码

使用H2自带的UTF-8函数处理

CALL UTF8TOSTRING(STRINGTOUTF8(‘中文乱码测试!’))

四、空间索引表的使用


1、创建空间索引表

CREATE TABLE GEO_TABLE(GID SERIAL, THE_GEOM GEOMETRY);

INSERT INTO GEO_TABLE(THE_GEOM) VALUES

(‘POINT(500 505)’),

(‘LINESTRING(550 551, 525 512, 565 566)’),

(‘POLYGON ((550 521, 580 540, 570 564, 512 566, 550 521))’);

CREATE SPATIAL INDEX GEO_TABLE_SPATIAL_INDEX ON GEO_TABLE(THE_GEOM);

2、几何空间相交查询

SET @POLY=‘POLYGON ((490 490, 536 490, 536 515, 490 515, 490 490))’;

SELECT * FROM GEO_TABLE WHERE THE_GEOM && @POLY;

五、H2GIS空间扩展


1、H2GIS下载

h2gis官网:http://www.h2gis.org/

h2gis文档:http://javadoc.orbisgis.org/

打开官方,点击 Download 下载

2、H2GIS安装运行

Linux

wget https://github.com/orbisgis/h2gis/releases/download/v1.5.0/h2gis-dist-1.5.0-bin.zip -O h2gis.zip

unzip h2gis.zip

cd h2gis-standalone

nohup java -cp h2gis-dist-1.5.0.jar org.h2.tools.Server -tcpAllowOthers -tcpPort 9101 -webAllowOthers -webPort 8081 2>&1 &

java -jar h2gis-dist-1.5.0.jar

Windows

将压缩包解压,cmd打开进入解压目录

cd h2gis-standalone

java -jar h2gis-dist-1.5.0.jar

3、H2GIS空间扩展

初始化之后就有了H2扩展

CREATE ALIAS IF NOT EXISTS H2GIS_SPATIAL FOR “org.h2gis.functions.factory.H2GISFunctions.load”;

CALL H2GIS_SPATIAL();

六、H2数据库备份


1、启动h2gis

cd h2gis-standalone

java -cp h2gis-dist-1.5.0.jar org.h2.tools.Server -tcpAllowOthers -tcpPort 9101 -webAllowOthers -webPort 8081

URL链接:jdbc:h2:tcp://127.0.0.1:9101/~/testdb

2、数据库备份

java -cp /usr/local/hadoop/h2gis-standalone/bin/h2-1.4.197.jar org.h2.tools.Script -url jdbc:h2:tcp://127.0.0.1:8081/~/testdb -user sa -script /usr/local/hadoop/h2gis-standalone/table/testdb.zip -options compression zip

3、H2GIS空间扩展

CREATE ALIAS IF NOT EXISTS H2GIS_SPATIAL FOR “org.h2gis.functions.factory.H2GISFunctions.load”;
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
g" alt=“img” style=“zoom: 33%;” />

最后

我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

[外链图片转存中…(img-YA8oBERa-1712575337952)]

还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

[外链图片转存中…(img-QcgU1TaR-1712575337952)]

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐