1

在使用后端JAVA托管的 Web 项目中,我们可以在下面添加类似的内容(考虑连接服务器)TomcatORACLE/MYSQL<Resource>Oracle

<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/myProject">

  <Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver" 
  factory="oracle.jdbc.pool.OracleDataSourceFactory" 
  maxActive="20" maxIdle="10" 
  maxWait="-1" name="jdbc/TestDB" password="dbPAss" type="oracle.jdbc.pool.OracleDataSource" 
  url="jdbc:oracle:thin:@DBHOST:PORT:SERVICENAME" 
  user="dbUser"/>

  <Loader delegate="true"/>
</Context>

在项目中,如果它连接 a 并且可以通过使用在 a 中使用context.xml,则仅更改一些内容MySQLJAVA SERVLET

Context initContext = new InitialContext();
Context envContext  = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/TestDB");

然后创建它的Connection对象

使用它的正确语法应该是什么MongoDB

我打算为 MongoDB 服务器存储 HOST、PORT、USERNAME 和 PASSWORD。

4

3 回答 3

1

实际上有一个用于 MongoDB 的 JDBC 驱动程序。一个刚刚由一家名为 UnityJDBC 的公司发布。您可以在以下网址免费下载程序和驱动程序...

http://www.unityjdbc.com/mongojdbc/mongo_jdbc.php

于 2013-06-03T21:07:22.653 回答
1

Tomcat 在使用<Resource>元素时只支持 JDBC 数据源(嗯,它支持其他东西,如 SMTP 会话等,但对于数据库,它们必须是基于 JDBC 的)。MongoDB 目前没有 JDBC 驱动(因为它不是关系型数据库,JDBC API 对它没有意义)(除非你想试试这个东西:https ://github.com/erh/mongo-jdbc ),所以你必须为它管理你自己的资源池。

于 2012-07-13T13:52:54.757 回答
1

Tomcat(或更具体地说,JNDI)实际上支持任意资源(<Resource>中的元素config.xml),包括 MongoDB 的连接信息,而不需要 MongoDB(或任何其他非 RDBMS)使用 JDBC。所需要的只是实现javax.namingAPI 来定义自定义资源的属性(请参阅Tomcat JNDI HOW-TO 参考中的添加自定义资源工厂)。

我最近发现了这个 GitHub 项目,该项目旨在在使用官方 MongoDB Java 客户端时将 MongoDB 数据源连接信息存储为 JNDI 资源。

如果您使用的是 Spring,则此其他答案在使用 Spring 时通过 JNDI 资源提供有关 MongoDB 数据源配置的信息(并且该代码也可以用作为 MongoDB 或您的任何其他配置属性创建自己的自定义 JNDI 资源加载器的指南与存储在 Tomcat 中context.xml)。

于 2015-08-19T17:00:11.177 回答