`

Liferay 使用 H2 数据库

阅读更多
我们以tomcat5.5.27 和 portal trunk version 34830 举例.

下载H2数据库
官网http://www.h2database.com

将h2-x.x.x.jar放到tomcat/common/lib/ext

修改portal-ext.properties文件设置jdbc

    #
    # H2
    #
    jdbc.default.driverClassName=org.h2.Driver
    jdbc.default.url=jdbc:h2:${liferay.home}/data/h2/lportal;DB_CLOSE_ON_EXIT=FALSE
    jdbc.default.username=sa
    jdbc.default.password=

打补丁

Index: portal-impl/src/com/liferay/portal/tools/sql/DBUtil.java
--- portal-impl/src/com/liferay/portal/tools/sql/DBUtil.java	(revision 34653)
+++ portal-impl/src/com/liferay/portal/tools/sql/DBUtil.java	Fri Jul 24 16:32:13 CST 2009
@@ -49,25 +49,7 @@
 
 import javax.naming.NamingException;
 
 public abstract class DBUtil {
 
@@ -77,6 +59,8 @@
 
 	public static final String TYPE_FIREBIRD = "firebird";
 
+    public static final String Type_H2 = "h2";
+
 	public static final String TYPE_HYPERSONIC = "hypersonic";
 
 	public static final String TYPE_INFORMIX = "informix";
@@ -100,7 +84,7 @@
 	public static final String TYPE_SYBASE = "sybase";
 
 	public static final String[] TYPE_ALL = {
-		TYPE_DB2, TYPE_DERBY, TYPE_FIREBIRD, TYPE_HYPERSONIC, TYPE_INFORMIX,
+		TYPE_DB2, TYPE_DERBY, TYPE_FIREBIRD, Type_H2, TYPE_HYPERSONIC, TYPE_INFORMIX,
 		TYPE_INGRES, TYPE_INTERBASE, TYPE_JDATASTORE, TYPE_MYSQL, TYPE_ORACLE,
 		TYPE_POSTGRESQL, TYPE_SAP, TYPE_SQLSERVER, TYPE_SYBASE
 	};
@@ -137,7 +121,7 @@
 		else if (type.equals(TYPE_FIREBIRD)) {
 			dbUtil = FirebirdUtil.getInstance();
 		}
-		else if (type.equals(TYPE_HYPERSONIC)) {
+		else if (type.equals(TYPE_HYPERSONIC) || type.equals(Type_H2)) {
 			dbUtil = HypersonicUtil.getInstance();
 		}
 		else if (type.equals(TYPE_INFORMIX)) {
@@ -187,7 +171,7 @@
 				_dbUtil = DB2Util.getInstance();
 			}
 		}
-		else if (dialect instanceof HSQLDialect) {
+		else if (dialect instanceof HSQLDialect || dialect instanceof H2Dialect) {
 			_dbUtil = HypersonicUtil.getInstance();
 		}
 		else if (dialect instanceof InformixDialect) {

编译打包发布portal-impl.jar.

启动tomcat

应该就能看到Liferay在使用h2数据库

Loading file:/C:/Projects/lportal/bundles-trunk/tomcat-5.5.27/webapps/ROOT/WEB-INF/classes/portal-ext.properties
Loading file:/C:/Projects/lportal/bundles-trunk/tomcat-5.5.27/webapps/ROOT/WEB-INF/classes/portal-developer.properties
08:12:41,134 INFO  [DialectDetector:58] Determining dialect for H2 1
08:12:42,603 INFO  [DialectDetector:91] Using dialect org.hibernate.dialect.H2Dialect
Loading jar:file:/C:/Projects/lportal/bundles-trunk/tomcat-5.5.27/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/captcha.properties
08:13:29,551 INFO  [PortalImpl:249] Portal lib directory /C:/Projects/lportal/bundles-trunk/tomcat-5.5.27/webapps/ROOT/WEB-INF/lib/
Starting Liferay Portal Standard Edition 5.3.0 (Bunyan / Build 5300 / May 18, 2009)

进展请看 http://issues.liferay.com/browse/LPS-4313

英文http://www.liferay.com/web/guest/community/wiki/-/wiki/Main/H2
分享到:
评论

相关推荐

    Liferay Database Configuration

    在默认情况下,Liferay 使用 H2 数据库,但根据实际需求,用户可能希望更换为更强大的数据库系统,如 MySQL、Oracle 或 PostgreSQL。下面我们将详细介绍如何进行 Liferay 数据库配置。 首先,你需要了解 Liferay ...

    liferay数据库表结构

    综上所述,文档为我们提供了全面的Liferay数据库表结构知识,特别是"Layout"表的设计和使用,这为Liferay开发提供了坚实的支持。开发者可以根据这些详细信息,定制和优化自己的Liferay门户实例,从而满足不同的业务...

    Liferay5.1.2配置Oracle10G数据库操作说明书

    Liferay 是一款开源的企业级门户平台,它默认使用 HSQLDB 作为内置数据库。然而,在某些场景下,用户可能需要将数据库迁移至更强大的 Oracle 10G 数据库。这个过程虽然步骤不多,但由于英文文档描述模糊,且网络上的...

    Liferay Portal数据库读写说明

    Liferay Portal是一款广泛使用的开源企业级门户系统,它集成了多种功能模块,如文档管理、博客、论坛等,为企业提供了全面的信息管理和协作平台。本文将根据给定的部分内容对Liferay Portal数据库中的几个关键表进行...

    Liferay Portal 数据库介绍

    Liferay Portal 数据库介绍 Liferay Portal 数据库是指Liferay Portal系统中存储的所有数据,包括用户信息、组织结构、页面布局、portlet配置等。下面将从数据库的角度来介绍Liferay Portal 的页面布局和相关知识点...

    Liferay+Portal_数据库结构介绍

    Liferay+Portal_数据库结构介绍,详细描述了liferay portal的数据库。

    Liferay数据库表结构说明文档

    【Liferay数据库表结构说明文档】 Liferay是一个开源的企业级门户平台,它的核心功能之一是管理用户、组织、权限和内容。为了实现这些功能,Liferay维护着一系列的数据库表来存储和管理这些数据。本文档主要关注的...

    CAS4.2.4 连接Liferay6.2以上版本数据库用户表验证用户 project

    在这个项目中,我们将探讨如何使用CAS 4.2.4版本与Liferay 6.2及以上版本的数据库集成,以便在用户登录时通过验证Liferay的用户表来确认用户身份。 Liferay是一款开源的企业级门户平台,提供内容管理、社交网络和...

    java-oracle.rar_liferay_oracle

    标题 "java-oracle.rar_liferay_oracle" 暗示了这个压缩包是关于使用Java技术在Liferay门户系统中连接Oracle数据库的资源。Liferay是一个开源的企业级内容管理系统,而Oracle是一种广泛应用的关系型数据库管理系统。...

    liferay的oracle部署

    在部署Liferay Portal时,与Oracle数据库的集成是关键步骤。以下是对配置过程的详细解释: 1. **数据库配置修改**: - 首先,你需要在`portal-impl\src\portal.properties`文件中,取消Hypersonic数据库连接的注释...

    Liferay 使用手册

    **Liferay 使用手册** Liferay 是一款开源的企业级门户平台,它提供了丰富的功能,包括网站构建、内容管理、社交协作以及工作流程管理等。这款工具以其灵活的架构和强大的定制能力,深受企业和开发者喜爱。本手册将...

    Liferay连接数据库方案.doc

    ### Liferay连接数据库方案 #### 一、概述 本文档主要介绍了如何在Liferay 4.2.2版本中配置连接不同类型的数据库,包括HSQLDB(默认)、MySQL、SQL Server 2005以及Oracle 10g。通过详细的步骤指导,帮助用户根据...

    liferay使用说明--管理

    ### Liferay权限管理系统详解 Liferay是一款开源的企业级门户平台,提供了一系列强大的工具和服务,用于构建和管理企业网站、社区和应用程序。其中,权限管理是其核心功能之一,旨在帮助企业控制用户对不同资源的...

    Liferay6 官方培训学习笔记

    ### Liferay6官方培训学习笔记:开发...完成以上步骤后,重启Liferay服务,即可使用新配置的数据库进行开发工作。这不仅为开发团队提供了更灵活的数据库选择,也进一步提高了Liferay应用在不同场景下的适应性和稳定性。

    liferay-开发文档

    "Liferay 6.0.5开发指南.docx"可能提供了更详尽的开发实践指导,涵盖了从项目初始化、部署到调试的全过程,以及Liferay API的使用。 "liferay架构.pdf"深入介绍了Liferay的架构设计,包括服务层、持久层、业务逻辑...

    Liferay 开源全面资料

    Liferay+Portal+数据库介绍+.doc Liferay+权限管理.doc liferay-portal-5-2-systems-development-sample-chapter-5-managing-pages[1].pdf LiferayPortal二次开发指南.pdf liferay常用模块的简介....

    liferay-portal-sql-6.1.1-ce-ga2-20120731132656558

    使用这些SQL脚本时,用户应遵循Liferay的官方文档,确保正确执行每个步骤,同时考虑数据库的最佳实践,如事务管理、安全性设置和备份策略。对于Oracle数据库,还需要熟悉其特定的语法和特性,以便更好地利用这些资源...

Global site tag (gtag.js) - Google Analytics