十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
请你表达清楚下你的意思,最好能列出1234条例出来,这样我们好回答,你这样问很含糊!
创新互联专业为企业提供白碱滩网站建设、白碱滩做网站、白碱滩网站设计、白碱滩网站制作等企业网站建设、网页设计与制作、白碱滩企业网站模板建站服务,10多年白碱滩做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
没有,建议用java操作h2数据库,如果php需要用的话,用java写好接口给php使用,没有必要通过php直接操作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
h2创建数据库语句如下:
CREATE TABLE TEST AS SELECT * FROM CSVREAD('test.csv');//csv文件数据创建test表 CREATE TABLE TEST(ID INT PRIMARY KEY, NAME VARCHAR(255)) AS SELECT * FROM CSVREAD('test.csv');/创建test表,csv文件相应的列插入到test表相应的字段
H2数据库介绍
常用的开源数据库:H2,Derby,HSQLDB,MySQL,PostgreSQL。其中H2,HSQLDB类似,十分适合作为嵌入式数据库使用,其它的数据库大部分都需要安装独立的客户端和服务器端。
H2的优势:
1、h2采用纯Java编写,因此不受平台的限制。
2、h2只有一个jar文件,十分适合作为嵌入式数据库试用。
3、性能和功能的优势
H2比HSQLDB的最大的优势就是h2提供了一个十分方便的web控制台用于操作和管理数据库内容,这点比起HSQLDB的swing和awt控制台实在好用多了。