- 浏览: 51903 次
最新评论
http://www.chinasb.org/archives/2010/12/1319.shtml
Liferay的多数据源配置十分简单,只需要在tomcat\conf\Catalina\localhost\ROOT.xml中增加即可。如:
这里配置了两个数据源供Liferay使用,一个是替换Liferay默认数据源,一个是为需要开发的业务系统提供的数据源,这样一来就可以把业务数据库与Portal默认数据库分开管理了,现在大家都开始在问如何在Liferay开发里面使用第二个数据源呢?怎样进行事务控制?好了,接下来我们开始解决这些问题。(这是基于EXT下的开发哦)
1.新建ext-impl/src/META-INF/ext-spring.xml。内容如下:
看明白了吧,就是这么简单,只要你留心一下Liferay源码就会发现了。
2.数据源配置好了,也放到Spring管理了,那么下一步该如果使用呢。很简单,当然是Liferay怎么去使用默认的数据源我们就怎样去使用我们自定义的数据源罗。没错,就是强大的ServiceBuilder。下面给个例子吧,再参照上一篇Liferay自定义原生态SQL查询就操作数据库方面就没什么难题了。
看到了吧,ServiceBuilder主要是通过指定的数据源,session工厂和事务管理去生成相对应的数据库操作方法的。
Liferay的多数据源配置十分简单,只需要在tomcat\conf\Catalina\localhost\ROOT.xml中增加即可。如:
<!-- database source --> <Resource name="jdbc/LiferayPool" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.1.229:1521:orcl" username="lportal" password="lportal" maxActive="20" /> <Resource name="jdbc/XXXPool" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.1.229:1521:orcl" username="xxx" password="xxx" maxActive="20" />
这里配置了两个数据源供Liferay使用,一个是替换Liferay默认数据源,一个是为需要开发的业务系统提供的数据源,这样一来就可以把业务数据库与Portal默认数据库分开管理了,现在大家都开始在问如何在Liferay开发里面使用第二个数据源呢?怎样进行事务控制?好了,接下来我们开始解决这些问题。(这是基于EXT下的开发哦)
1.新建ext-impl/src/META-INF/ext-spring.xml。内容如下:
<!-- Liferay DataSource --> <bean id="liferayDataSource" class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy"> <property name="targetDataSource"> <bean class="com.liferay.portal.spring.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="jdbc/LiferayPool" /> </bean> </property> </bean> <!-- XXX DataSource --> <bean id="xxxDataSource" class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy"> <property name="targetDataSource"> <bean class="com.liferay.portal.spring.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="jdbc/XXXPool" /> </bean> </property> </bean> <bean id="xxxHibernateSessionFactory" class="com.liferay.portal.spring.hibernate.PortalHibernateConfiguration"> <property name="dataSource" ref="xxxDataSource" /> </bean> <bean id="xxxSessionFactory" class="com.liferay.portal.dao.orm.hibernate.SessionFactoryImpl"> <property name="sessionFactoryClassLoader"> <bean class="com.liferay.portal.kernel.util.PortalClassLoaderUtil" factory-method="getClassLoader" /> </property> <property name="sessionFactoryImplementor" ref="xxxHibernateSessionFactory" /> </bean> <bean id="xxxTransactionManager" class="com.liferay.portal.spring.transaction.TransactionManagerFactory" factory-method="createTransactionManager"> <constructor-arg ref="xxxDataSource" /> <constructor-arg ref="xxxHibernateSessionFactory" /> </bean>
看明白了吧,就是这么简单,只要你留心一下Liferay源码就会发现了。
2.数据源配置好了,也放到Spring管理了,那么下一步该如果使用呢。很简单,当然是Liferay怎么去使用默认的数据源我们就怎样去使用我们自定义的数据源罗。没错,就是强大的ServiceBuilder。下面给个例子吧,再参照上一篇Liferay自定义原生态SQL查询就操作数据库方面就没什么难题了。
<?xml version="1.0"?> <!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 6.0.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_6_0_0.dtd"> <service-builder package-path="com.xxx.xxx.portlet.book"> <namespace>Book</namespace> <entity name="Book" local-service="true" remote-service="false" data-source="xxxDataSource" session-factory="xxxSessionFactory" tx-manager="xxxTransactionManager"> <!-- PK fields --> <column name="bookId" type="long" primary="true" /> <!-- Group instance --> <column name="groupId" type="long" /> <!-- Audit fields --> <column name="companyId" type="long" /> <column name="userId" type="long" /> <column name="userName" type="String" /> <column name="createDate" type="Date" /> <column name="modifiedDate" type="Date" /> <!-- Other fields --> <column name="title" type="String" /> </entity> </service-builder>
看到了吧,ServiceBuilder主要是通过指定的数据源,session工厂和事务管理去生成相对应的数据库操作方法的。
发表评论
-
AOP
2017-02-28 13:14 446http://blog.csdn.net/moreev ... -
liferay 6.1 CE + LDAP 导入自定义字段
2013-12-21 16:06 866导入自定义字段时无论如何尝试都不成功,但是自定义字段的值导 ... -
liferay 6.1 CE LDAP
2013-12-14 14:20 2282goole了许多网页,讲的是五花八门,最后想起来去port ... -
research
2013-12-10 10:42 0<aui:select label="typ ... -
fetch 与 find 的区别
2013-11-11 09:55 871liferay中 findxxxx 与fetchxxx 方 ... -
liferay 一对多 多对多 关系 (model)
2013-11-07 11:24 610通过model层实现 例如 people 与 ad ... -
liferay 一对多 多对多 关系 (build-service)
2013-11-07 11:04 634通过配置service.xml 实现 说明:一对多 ... -
liferay Logical Architecture
2013-09-11 15:20 1151Logical Architecture 详 ... -
liferay 文件下载失败
2013-07-01 14:48 541现象: http://issues.liferay.com/ ... -
403
2013-06-05 16:41 0portal.properties auth.forward ... -
aui-autocomplete [ 三 ] 源码解析
2013-01-09 09:53 1557懒了, 只翻译几个目前用到的属性,其实英文写的很明白的,需要花 ... -
aui-autocomplete [ 二 ] 验证未通过保留输入值
2013-01-09 09:25 821<% long myUserId = ParamU ... -
aui-autocomplete [ 一 ] override
2013-01-08 13:58 817liferay aui-autocomplete 如: 数据 ... -
Liferay AutoFields 添加事件
2013-01-08 09:30 0new Liferay.AutoFields( ... -
web app timezone (view-business-db)
2013-01-07 11:50 1208目标:面向多区域用户 添加更新记录:用户输入本区域时间, 数据 ... -
liferay auto_filed
2012-12-03 14:51 745new Liferay.AutoFields( ... -
liferay at java.util.regex.Pattern$Curly.match0
2012-11-21 13:17 898build-service 出现liferay at java ... -
actionurl 参数顺序
2012-10-19 14:16 1466PortletURL editURL = renderResp ... -
java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.
2012-10-19 14:06 3994现象: liferay中查询数据,用到如下语句 select ... -
Unable to find required classes (javax.activation.DataHandler and javax.mail.int
2012-09-04 13:41 9652.1.8 错误原因: 需要mail.jar和activat ...
相关推荐
liferay6中文开发文档 包括: Liferay6开发者手册V1.0.doc Liferay+6.0.5开发指南.docx LiferayPortal二次开发指南.pdf Liferay代码研读.pdf liferay-技术文档.doc ...Liferay开发环境配置说明文档.pdf
liferay如何在eclipse中配置开发和debug环境,官方详细的资料,照着做就ok了,有什么问题可以联系我
包括liferay的用户配置,系统接口,包括Liferay Portal 6 企业应用开发,Liferay 用户开发接口,Liferay+in+Action,Liferay 系统开发等
Liferay工作流简要配置
Liferay5.2.3和CAS配置成SSO
liferay portal 开发指南liferay portal 开发指南liferay portal 开发指南liferay portal 开发指南
Liferay(5.1.2)的数据库由自身绑定的HSQLDB转成oracle(10G)虽然步骤不多,但因英文的参考资料说的太笼统,而网上相关资料又太少,所以操作起来很费时费力,尤其是当某个错误的操作,出现一大堆的错误提示,可能误导...
liferay开发liferay开发liferay开发liferay开发
liferay开发文档集合7个pdf
Liferay国内用的比较少,一般都是国外的公司或者外企比较喜欢用这个,我也是第一次接触这个东西,开始觉得挺难学的,后来找到诀窍后就觉得还是挺简单的,我们开发不需要写DAO,Service,只需要写Web层与数据库表的...
liferay ,ext基本配置方法.txt
最近在配置liferay5.1.2+NetBeans6.5的开发环境时,遇到过各种各样的问题,因此浪费很多时间,所以按照我的配置过程撰写一份操作SOP,供大家参考使用,避免再走弯路。该操作说明书是根据自己的理解所写,难免会有...
本教程详细的为大家介绍了Liferay的安装步骤以及Liferay的相关配置,如数据库的连接。
7z压缩 三合一LifeRay资料: 1、LifeRay开发参考手册(温兵) 2、LifeRay二次开发指南 3、LifeRay4.3中文开发指南
liferay6.2开发指南liferay6.2开发指南.doc
liferay 6.0 开发指南 liferay-developer-guide-6.0.pdf
Liferay开发环境配置.pdf
Liferay Portal针对不同的用户会展现出不同的服务网页。当浏览Portal主页网址http://localhost:8080/时,自动转入网址http://localhost:8080/web/guest/home调出面向所有人的Guest社区公共主页。一个注册用户登录...
LifeRay架构开发手册,liferay Portal开发解析等精彩文章
liferay开发文档.pdf