Ibm mobilefirst IBM Worklight-如何配置SQL适配器的URL元素?

Ibm mobilefirst IBM Worklight-如何配置SQL适配器的URL元素?,ibm-mobilefirst,worklight-adapters,Ibm Mobilefirst,Worklight Adapters,我有一个使用SQL适配器从数据库检索数据的应用程序 这是我的场景:一台机器可能像一台服务器,其中有数据库,一台设备可能是客户端。如果我有一个连接了机器和设备的LAN,我必须如何设置adapter.xml以连接到机器 <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed Materials - Property of IBM 5725-G92 (C) Copyright IBM Corp. 2011, 2012.

我有一个使用SQL适配器从数据库检索数据的应用程序

这是我的场景:一台机器可能像一台服务器,其中有数据库,一台设备可能是客户端。如果我有一个连接了机器和设备的LAN,我必须如何设置adapter.xml以连接到机器

<?xml version="1.0" encoding="UTF-8"?>
<!--
    Licensed Materials - Property of IBM
    5725-G92 (C) Copyright IBM Corp. 2011, 2012. All Rights Reserved.
    US Government Users Restricted Rights - Use, duplication or
    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
-->
<wl:adapter name="DbConnect"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:wl="http://www.worklight.com/integration"
    xmlns:sql="http://www.worklight.com/integration/sql">

    <displayName>DbConnect</displayName>
    <description>DbConnect</description>
    <connectivity>
        <connectionPolicy xsi:type="sql:SQLConnectionPolicy">
            <!-- Example for using a JNDI data source, replace with actual data source name -->
            <!-- <dataSourceJNDIName>java:/data-source-jndi-name</dataSourceJNDIName> -->

            <!-- Example for using MySQL connector, do not forget to put the MySQL connector library in the project's lib folder -->
            <dataSourceDefinition>
                <driverClass>com.mysql.jdbc.Driver</driverClass>
                <url>jdbc:mysql://localhost:3306/test</url>
                <user>root</user>
                <password>mysql</password>
            </dataSourceDefinition>
        </connectionPolicy>
        <loadConstraints maxConcurrentConnectionsPerNode="5" />
    </connectivity>

    <!-- Replace this with appropriate procedures -->
    <procedure name="remoteDbSize"/>
    <procedure name="getCanti"/>
    <procedure name="getCategorie"/>

</wl:adapter>

我想我改变了这个值,而不是localhost,我必须用机器的LAN上的IP地址来编辑它。是这样吗?如果我想连接到一台远程机器(在本例中是一台真正的服务器),我还想知道它是如何工作的。

后端是本地的还是远程的并不重要

如果要使用SQL适配器连接到SQL后端,则适配器XML中的URL元素必须指向该数据库,而不仅仅是指向承载该数据库的服务器的IP地址

示例:jdbc:mysql://my-host-or-ip:3306/my-数据库

阅读材料:

-
我很难找到在适配器XML文件中使用dataSourceDefinition的好理由。dataSourceJNDIName只是需要设置多一点工作,是在适配器中使用数据源的正确方法。它将运行时详细信息与开发工件分离,允许不同的开发人员或在不同的环境中使用不同的数据库服务器,而无需更改代码,并从适配器XML文件中获取数据库密码

有关显示如何配置JNDI数据源并将其与Worklight测试服务器一起使用的示例,您可以看到

如果您使用dataSourceJNDIName,您的场景对于您正在使用的任何应用程序服务器来说都是相当标准的数据源配置