通过 jndi 的 MongoDb
您知道是否可以在 Spring 中通过 jndi 的数据源像任何其他数据库一样设置 mongodb 实例?
谢谢
Do you know if it is possible to setup mongodb instance in spring like any other db via datasource from jndi?
Thx
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
是的,这是可能的,当您可以创建自己的 JNDI 工厂时,为什么还要依赖别人的代码呢?
只需创建一个实现 javax.naming.spi.ObjectFactory 的类和一个从 JNDI 上下文中提取 mongo 的 bean,我为 spring data-mongo MongoTemplate 对象配置了它。
Spring
bean:
Context.xml:
Web.xml
Yes it is possible, why relying in someone elses code when you can create your own JNDI factory?
just create a class that implements javax.naming.spi.ObjectFactory and a bean that pulls mongo from the JNDI context, I configured this for spring data-mongo MongoTemplate object.
}
Spring bean:
Context.xml:
Web.xml
复用Juan Melo自定义实现的
ObjectFactory
接口(CustomMongoJNDIFactory
),也可以使用Spring的jee
命名空间的jndi-lookup标签和对应的Tomcat进行配置在context.xml 文件
中配置,如下所示:spring-mongodb-persistence-context.xml
:context.xml
:Reusing Juan Melo's custom implementation of
ObjectFactory
interface (CustomMongoJNDIFactory
), it can be also configured using jndi-lookup tag of Spring'sjee
namespace and corresponding Tomcat config incontext.xml file
, like this:spring-mongodb-persistence-context.xml
:context.xml
:为此,您需要 MongoDB 的 JDBC 驱动程序实现。我只找到了一个,它在 MongoDB 页面上被称为“实验性”:GitHub JDBC Driver for MongoDB。
为了解决这个限制,您可以设置一些 Spring bean 并为您的应用程序 DAO 创建一个 MongoDB 实现(这样,您就不需要更改 DAO 接口及其客户端组件)。
本文可能会有所帮助:
集成
To do this, you'll need a JDBC driver impl for MongoDB. I have only found one, and it's referred as "experimental" from the MongoDB page: GitHub JDBC Driver for MongoDB .
to workaroud this limitation, you could setup some Spring beans and create a MongoDB implementation for your application DAO (this way, you won't need to change the DAO interface and it's client components).
This articles may help:
Integration
如果您的意思是像常规 RDBMS 一样使用 JDBC 访问,那么答案是否定的。
If you mean like regular RDBMS with JDBC access, then the answer is no.
还有另一项工作是为 MongoDB 提供 JDBC 驱动程序实现。这里:
https://sourceforge.net/projects/mongojdbcdriver
无论如何都不完整,但希望能提供Java 开发人员很快就会熟悉的 JDBC 实现。
There is another effort to provide a JDBC driver impl for MongoDB. Here:
https://sourceforge.net/projects/mongojdbcdriver
Not complete by any measure, but will hopefully provide a JDBC implementation that is familiar to Java developers soon.