在 Liberty 中配置 MongoDB 连接

使用 MongoDB 的应用程序可以在 Liberty 上运行。应用程序使用您为服务器配置的 MongoDB Java™ 驱动程序和数据源来访问 MongoDB 实例。

开始之前

注: Liberty 为 MongoDB 提供配置支持。MongoDB(有着“humongous”的含义,表示巨大、庞大)是可伸缩的高性能开放式源代码 NoSQL 数据库。

仅 MongoDB Java 驱动程序 V2.10.0 到 V2.12.5 受支持。

关于此任务

要使应用程序能使用 MongoDB,您为 MongoDB Java 驱动程序配置共享库,并且在 Liberty 的 server.xml 文件中配置对该共享库的库引用。应用程序可以直接从应用程序或通过 server.xml 文件中的 mongodb-2.0 功能部件和 mongoDB 实例配置来访问 MongoDB。

过程

  1. 在应用程序和 Liberty 运行时可以访问的位置安装 MongoDB Java 驱动程序。

    例如,将 MongoDB 驱动程序 .jar 文件放入 Liberty_profile_root/usr/servers/server_name/lib 目录。

  2. 在 Liberty 服务器的 server.xml 文件中配置 MongoDB 驱动程序 .jar 文件的共享库。
    <library id="MongoLib">
       <file name="${server.config.dir}/lib/mongo.jar" />
    </library>
  3. 使应用程序能够访问 MongoDB(从应用程序直接访问或者使用 mongodb-2.0 功能部件)。
    • 启用从应用程序直接访问 MongoDB。
      1. server.xml 文件的应用程序元素中配置共享库的库引用。
        <application ...>
           <classloader commonLibraryRef="MongoLib"/>
        </application>
        现在,应用程序可以直接访问 MongoDB API。如果您希望应用程序使用运行时注入引擎,请继续执行后续步骤。
    • server.xml 文件中配置 mongodb-2.0 功能部件、mongo 和 mongoDB 元素。
      1. mongodb-2.0 功能部件添加到 server.xml 文件。
        <featureManager>
           <feature>mongodb-2.0</feature>
           <feature>jndi-1.0</feature>
        </featureManager>
        仅当您使用 JNDI 来查找资源时,才需要 JNDI 功能部件。如果您使用资源注入,那么不需要 JNDI 功能部件。
      2. 配置一个具有对前一步骤所创建共享库的引用的 mongo 元素。
        <mongo id="mongo" libraryRef="MongoLib" />
      3. 配置 MongoDB 元素。
        <mongoDB jndiName="mongo/testdb" mongoRef="mongo" databaseName="db-test" />

        配置 JNDI 名称将使应用程序或 Liberty 运行时能够查找 MongoDB 实例。

      4. 使应用程序能够访问 MongoDB。

        以下示例说明了 JNDI 查找和资源注入:

        public class TestServlet extends HttpServlet {
              @Resource(name = "mongo/testdb")
              protected DB db;
              ...
           protected void doGet(HttpServletRequest request,
                 HttpServletResponse response) throws ServletException, IOException {
           // Alternatively use InitialContext lookup
              DB lookup = (DB) new InitialContext().lookup("java:comp/env/mongo/testdb");
        ...
      5. 如果您正在使用 JNDI 查找功能,请将资源环境引用添加到应用程序的 web.xml 文件:
        <resource-env-ref>
           <resource-env-ref-name>mongo/testdb</resource-env-ref-name>
           <resource-env-ref-type>com.mongodb.DB</resource-env-ref-type>
        </resource-env-ref>

下一步做什么

测试从应用程序使用 MongoDB 的情况。

有关 MongoDB 元素的更多信息,请参阅 MongoDB Integration 2.0


用于指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_mongodb_create
文件名:twlp_mongodb_create.html