h2数据库导入mysql(h2数据库教程)

本文目录一览:

用java 实现 h2数据库和mysql数据库实时数据同步

1、h2数据库你写一个dao类(例如:insert方法),mysql也写一个mydao类(例如:insertmysql()),

当往h2数据库执行插入的时候 new dao().inser(sql);

new mydao().insertmysql(sql);

2、也可以直接到数据库操作写存储过程和游标自动同步。

3、使用第三方插件。有很多这样子的平台做企业数据一体化的

如何将H2数据库数据转存到MYSQL数据库中?

这里面有一些具体的问题,比如说是否只同步新增的数据,要同步的表是否只有少数几个,要同步的表中是否有类似于自增字段这种东西等等。

最简单的情况下,只同步新增数据,只同步少数几个表,并且表中都有自增ID,那你只需要php定时执行,参照网页链接

然后每次定时执行时,读mysql表中的最后一个id(这个id要跟你的h2的自增id一样),然后根据这个到h2表中去读出大于这个id的一个固定记录数的记录,比如一次读5000或1万条,然后批量插入mysql就行了

h2 内存数据库-如果将这个mysql的语句转换成h2的

上一句和下一句sql语句。没有分号。 CREATE TABLE `20110131_admin` ( `loginName` varchar(60) default NULL, `password` varchar(60) default NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; insert into `20110131_admin`(`loginName`,`password`) values (‘admin’,’admin’); 这样就可以了。

h2console怎么加载数据库

1.1、搭建JavaWeb测试项目

创建一个【H2DBTest】JavaWeb项目,找到H2数据库的jar文件,如下图所示:

H2数据库就一个jar文件,这个Jar文件里面包含了使用JDBC方式连接H2数据库时使用的驱动类,将”h2-1.4.183.jar”加入到【H2DBTest】项目中,如下图所示:

二、启动H2数据库

既然是要将H2数据库作为我们Web应用的一部分嵌入进来,那么我们就要在Web应用中启动H2数据库的服务,这样我们才能够连接到H2数据库,因此我们可以编写一个专门用于启动H2数据库服务的监听器(Listener)

什么是H2数据库

H2是Thomas Mueller提供的一个开源的、纯java实现的关系数据库。

H2是一个开源的嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时H2提供了一个十分方便的web控制台用于操作和管理数据库内容。H2还提供兼容模式,可以兼容一些主流的数据库,因此采用H2作为开发期的数据库非常方便。

H2最大的用途在于可以同应用程序打包在一起发布,这样可以非常方便地存储少量结构化数据。

它的另一个用途是用于单元测试。启动速度快,而且可以关闭持久化功能,每一个用例执行完随即还原到初始状态。

H2的第三个用处是作为缓存,作为NoSQL的一个补充。当某些场景下数据模型必须为关系型,可以拿它当Memcached使,作为后端MySQL/Oracle的一个缓冲层,缓存一些不经常变化但需要频繁访问的数据,比如字典表、权限表。不过这样系统架构就会比较复杂了。

扩展资料:

H2数据库运行方式:

1、内存模式

数据库只在内存中运行,关闭连接后数据库将被清空,适合测试环境,连接字符串:jdbc:h2:mem:DBName;DB_CLOSE_DELAY=-1,如果不指定DBName,则以私有方式启动,只允许一个连接。

2、嵌入式

数据库持久化存储为单个文件。连接字符串:jdbc:h2:file:~/.h2/DBName;AUTO_SERVER=TRUE。~/.h2/DBName表示数据库文件的存储位置,如果第一次连接则会自动创建数据库。

3、服务模式

H2支持三种服务模式:web server:此种运行方式支持使用浏览器访问H2 Console。

CP server:支持客户端/服务器端的连接方式。

PG server:支持PostgreSQL客户端。

参考资料:百度百科-H2

hibernate连接h2数据库配置怎么写

大家可以参考下这个网站

1.先启动项目上的h2/bin下的h2.bat或h2w.bat文件,把h2数据库启动起来

2.SSH2框架和h2数据库整合方法

2.1先在数据库下创建 schema目录(相当于一个数据库实例)

create schema fdrkftcode

目的是解决这种异常 org.h2.jdbc.JdbcSQLException: Schema “fdrkftcode” not found; …

2.2在schema目录下创建表,如创建系统用户表admin

create table fdrkftcode.admin(

id int primary key,

adminname varchar(50),

username varchar(50),

userpwd varchar(50),

adminrights varchar(50),

createdate datetime,

usedtimes int,

lastlogin datetime,

curstatus int,

remark varchar(200)

)

3.为了使用hibernate操作h2,需要作如下设置,在sql编辑窗口输入下面这些脚本

对于实体pojo对象的映射,我是用的annotation,关键是id主键的映射,如下:

@Column(name = “ID”, nullable = false)

@Id

@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = “ABC_ID_SEQ”)

@SequenceGenerator(name = “ABC_ID_SEQ”, sequenceName = “ABC_ID_SEQ”)

protected Long id;

注意这里的GeneratedValue和SequenceGenerator的使用,这属于JPA规范,全部来自javax.persisten

4.配置applicationContext.xml文件,主要有三个地方要注意:

4.1修改连接数据库的JDBC驱动 driverClass的值为org.h2.Driver

4.2修改连接数据库所用的URL字符串 jdbcUrl的值为jdbc:h2:tcp://localhost/~/FDRKFTCODE;MODE=MySQL;AUTO_SERVER=TRUE

4.3修改Hibernate的数据库方言hibernate.dialect为org.hibernate.dialect.H2Dialect

5.h2数据库一些常用操作

5.1帮助命令help

5.2表中某字段重命名 ALTER TABLE fdrkftcode.admin ALTER COLUMN usepwd rename to userpwd

5.3表中新增字段 ALTER TABLE fdrkftcode.admin ADD IF NOT EXISTS abc varchar(50)

5.4表中删除字段 ALTER TABLE fdrkftcode.admin DROP COLUMN IF EXISTS abc

5.5查找表中记录 SELECT * from fdrkftcode.admin

5.6往表中插入记录 INSERT INTO fdrkftcode.admin VALUES (1,’管理员’,’admin’,’admin’,’10000000000000000000′,’2013-05-1 00:12:34′,3,’2013-05-1 15:32:57′,1,’超过级管理员’)

5.7修改表中某记录 UPDATE fdrkftcode.admin SET fdrkftcode.admin.adminname=’超级管理员’ where fdrkftcode.admin.id=1

5.8删除表中某记录 DELETE FROM fdrkftcode.admin WHERE fdrkftcode.admin.id=1

6.下面是我项目的applicationContext.xml配置方法,大家可以参考下

?xml version=”1.0″ encoding=”UTF-8″?

beans

xmlns=””

xmlns:xsi=””

xmlns:p=””

xsi:schemaLocation=” ”

!– 定义使用C3P0连接池的数据源 —

bean id=”dataSource” class=”com.mchange.v2.c3p0.ComboPooledDataSource”

!– 指定连接数据库的JDBC驱动 —

property name=”driverClass”

valueorg.h2.Driver/value

/property

!– 连接数据库所用的URL —

property name=”jdbcUrl”

valuejdbc:h2:tcp://localhost/~/FDRKFTCODE;MODE=MySQL;AUTO_SERVER=TRUE/value

/property

!– 连接数据库的用户名 —

property name=”user”

valuesa/value

/property

!– 连接数据库的密码 —

property name=”password”

value/value

/property

!– 设置数据库连接池的最大连接数 —

property name=”maxPoolSize”

value50/value

/property

!– 设置数据库连接池的最小连接数 —

property name=”minPoolSize”

value5/value

/property

!– 设置数据库连接池的初始化连接数 —

property name=”initialPoolSize”

value5/value

/property

!– 设置数据库连接池的连接的最大空闲时间,单位为秒 —

property name=”maxIdleTime”

value20/value

/property

/bean

!– 定义Hibernate的SessionFactory —

bean id=”sessionFactory” class=”org.springframework.orm.hibernate3.LocalSessionFactoryBean”

!– 依赖注入上面定义的数据源dataSource —

property name=”dataSource” ref=”dataSource”/

!– 注册Hibernate的ORM映射文件 —

property name=”mappingResources”

list

valuecom/sungoal/ORM/Admin.hbm.xml/value

/list

/property

!– 设置Hibernate的相关属性 —

property name=”hibernateProperties”

props

!– 设置Hibernate的数据库方言 —

prop key=”hibernate.dialect”org.hibernate.dialect.H2Dialect/prop

!– 设置Hibernate是否在控制台输出SQL语句,开发调试阶段通常设为true —

prop key=”show_sql”true/prop

!– 设置Hibernate一个提交批次中的最大SQL语句数 —

prop key=”hibernate.jdbc.batch_size”50/prop

/props

/property

/bean

!–定义Hibernate的事务管理器HibernateTransactionManager —

bean id=”transactionManager” class=”org.springframework.orm.hibernate3.HibernateTransactionManager”

!– 依赖注入上面定义的sessionFactory —

property name=”sessionFactory” ref=”sessionFactory”/

/bean

!– 装配通用数据库访问类BaseDAOImpl —

bean id=”dao” class=”com.sungoal.DAO.BaseDAOImpl”

!– 依赖注入上面定义的sessionFactory —

property name=”sessionFactory” ref=”sessionFactory”/

/bean

!– 部署系统用户管理业务控制器AdminAction —

bean id=”adminAction” class=”com.sungoal.struts.action.AdminAction” scope=”prototype”

property name=”dao” ref=”dao”/

/bean

/beans

原创文章,作者:GP7WV,如若转载,请注明出处:https://www.506064.com/n/127521.html

汽车小知识 小米SU7 今日油价 油耗计算器 电耗计算器 购置税计算器 贷款计算器 保险计算器 交通违章代码 体育新闻
(0)
GP7WVGP7WV
上一篇 2024-10-03 23:15
下一篇 2024-10-03 23:16

相关推荐

  • Python模块:自然语言处理(NLP)的情感分析

    Python是一种通用编程语言,也是自然语言处理(NLP)中使用最广泛的语言之一。在NLP中,情感分析是一项非常重要的任务。情感分析是指对文本进行分析、分类和评估,以确定它表达的情…

    编程 2024-10-04
  • 用python添加gnu,python里的加法

    本文目录一览: 1、Python 入门指南之使用 Python 解释器 2、python能添加注释么 怎么添加 3、python开发命令行脚本 4、怎么用python简单的制作一个…

    编程 2024-10-04
  • 忽略大小写的探讨

    在计算机编程中,大小写的问题一直是比较常见的。许多编程语言中,字母大小写不同会被看作是不同的符号,不同大小写可能会造成程序的错误。为了解决这个问题,我们往往需要忽略大小写。那么,究…

    编程 2024-10-29
  • 卡方值的计算方法

    一、卡方值的定义 卡方值,即卡方统计量,是一种用于衡量两个分类变量之间的相关性的统计量。它的值越大,表示两个变量之间的相关性越强。 二、卡方值的计算公式 卡方值的计算公式如下: (…

    编程 2024-11-05
  • 实战python:15个项目助力你成为高级开发者

    Python是一种直观、易于学习的编程语言,非常适合初学者。它的开放源代码和丰富的库、框架、工具使得它成为各种领域的开发人员的首选语言。如果您已经具备一些编程基础,那么挑战一些实际…

    编程 2024-11-12
  • AI语言的多个方面详解

    一、自然语言处理 自然语言处理是指计算机科学与人工智能领域中专注于处理自然语言的科学和工程技术。它使用文本和语音作为输入,将它们转化为机器可理解的表示,并用这种表示执行某些任务。在…

    编程 2024-11-12
  • Idea内存优化

    一、Android内存优化 在进行Idea内存优化之前,先要理解Android内存优化。 1、使用轻量级数据结构:使用int代替Integer,float代替Double等 2、避…

    编程 2024-10-04
  • jsoncpp的下载及使用

    一、jsoncpp的介绍 Jsoncpp是一款用于处理JSON数据的C++库,它支持将C++对象转换为JSON格式,以及将JSON格式转换为C++对象。Jsoncpp的优点在于它简…

    编程 2024-10-11
  • 推荐java,推荐java书籍

    本文目录一览: 1、谁能推荐本JAVA入门的经典书籍?? 2、想学习java推荐么? 3、Java书籍推荐有哪些 4、求推荐JAVA入门书籍 谁能推荐本JAVA入门的经典书籍?? …

    编程 2024-10-04
  • java模板问号,java中的问号

    本文目录一览: 1、Java中的问号与冒号 ? : 表达式 2、java工程中的图标上面出现问号,怎么解决~~紧急!!!!!! 3、eclipse 编的java程序运行后显示问号 …

    编程 2024-10-03

发表回复

登录后才能评论