Liferay连接第二个database

本文详细介绍了如何使用Spring框架进行数据库整合配置,包括数据源、事务管理、会话工厂等关键组件的配置,以及如何在服务层中实现创建空表的操作。同时,提供了针对特定数据库(如MySQL)的配置信息,以及创建自定义SQL文件和数据库的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

In MATA-INF add ext-spring.xml

<?xml version="1.0"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
	<bean id="newDatabaseHibernateSessionFactory"
		class="com.liferay.portal.spring.hibernate.PortletHibernateConfiguration"
		lazy-init="true">
		<property name="dataSource" ref="newDatabaseDataSource" /></span>
	</bean>

	<bean id="newDatabaseSessionFactory" class="com.liferay.portal.dao.orm.hibernate.SessionFactoryImpl"</span>
		lazy-init="true">
		<property name="sessionFactoryImplementor" ref="newDatabaseHibernateSessionFactory" /></span>
	</bean>

	<bean id="newDatabaseTransactionManager"
		class="org.springframework.orm.hibernate3.HibernateTransactionManager"
		lazy-init="true">
		<property name="dataSource" ref="newDatabaseDataSource" /></span>
		<property name="globalRollbackOnParticipationFailure" value="false" />
		<property name="sessionFactory" ref="newDatabaseHibernateSessionFactory" /></span>
	</bean>
	
	<bean id="newDatabaseDataSource"</span>
		class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy">
		<property name="targetDataSource">
			<bean class="com.liferay.portal.dao.jdbc.util.DataSourceFactoryBean">
				<property name="propertyPrefix" value="jdbc.newDatabase." /></span>
			</bean>
		</property>
	</bean>
</beans>

In service.xml use:(create a empty table for tableNameFinderImpl in persistence pageage )

<entity name="tableName" local-service="true" remote-service="false" 
			data-source="newDatabaseDataSource" session-factory="newDatabaseSessionFactory"
			tx-manager="newDatabaseTransactionManager">
		<column name="Id" type="long" primary="true" />
		<column name="value" type="String" />
	</entity>

In Liferay Tomcat tomcat-7.0.23\webapps\ROOT\WEB-INF\classes file portal-ext.properties

#newDatabase database
jdbc.newDatabase.driverClassName=com.mysql.jdbc.Driver
jdbc.newDatabase.url=jdbc:mysql://localhost/newDatabase?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.newDatabase.username=root
jdbc.newDatabase.password=root

last need create custom-sql folder and database.xml  for custom select sql sentence.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值