external database with Adobe CQ5?

2019-02-10 20:07发布

问题:

Is there any way to connect external data base like mysql can be connected to Adobe CQ5?

JCR(Java Content Repository) in Adobe cq5 now by default connects to H2 database...how to make it use sql/mysql?

回答1:

Go to: /system/console/configMgr
Open up: the JDBC Connections Pool configuration
Enter all the standard JDBC config elements (username, password, driver, JDBC URI)
Enter a Datasource Name (referred to below as yourDataSourceName)

In your JSP or Servlet:

<%@ page import="com.day.commons.datasource.poolservice.DataSourcePool" %>
<%@ page import="javax.sql.DataSource" %>

DataSourcePool dbService = sling.getService(DataSourcePool.class);
DataSource ds = (DataSource) dbService.getDataSource("yourDataSourceName");

if(ds != null) {
   try {
      %><sql:query var="result" sql="SELECT now()" dataSource="<%=ds%>" /><%
   } catch (Exception e) { } 
}