支持MongoDB 3.x.x的WSO2 DSS
我尝试将WSO2 DSS 3.5.0与MongoDB 3.2.1整合;
我发现.dbs文件公开的函数与mongo外壳相比非常有限
例如:
著名的
db.collection.FindAndModify()
不受支持;
MongoDB外壳命令的嵌套用法如下
db.collection.remove({_id: $BinData(3, #)}
无法分析
我用谷歌搜索了一下,在Github上找到了ds-connector-mongodb(带有mongo-java-drive-2.9.0和jongo 0.3)
我查看了DSS 3.5.0捆绑包,发现是"mongo-java-driver_3.0.0.wso2v2.jar"...
我完全搞不懂WSO2 DSS 3.5如何支持MongoDB
是否已弃用DS-Connector-MongoDB? 还是有一个新的结构/框架或其他什么?
更不用说mongo-java-drive2.x.x和3.x.x之间的兼容性问题...
请指教 谢谢
解决方案
为了支持MongoDB,当前支持的操作在[2]中的MongoOperationLabels下可用,对于其他特定操作,如"db.Collection tion.FindAndModify()",必须编写自定义操作,通过扩展[1]来扩展当前代码库
[1]https://github.com/wso2/wso2-dss-connectors/blob/master/mongodb/src/main/java/org/wso2/dss/connectors/mongodb/MongoDBDataSource.java
[2]https://github.com/wso2/wso2-dss-connectors/blob/master/mongodb/src/main/java/org/wso2/dss/connectors/mongodb/MongoDBDSConstants.java
目前可用的操作如下 伯爵, 放下, 发现, Find_one, 插入, 移除, 更新 文档[3]解释了如何使用WSO2数据服务服务器创建数据源。请注意,可以将服务器指定为逗号分隔的服务器主机和端口列表:"LOCALHOST"-"125.10.5.3,125.10.5.4"-"192.168.3.1:27017,192.168.3.2:27017"自动连接重试用于控制是否连接。系统重试自动连接时。
您还可以找到[4],这是一个解释如何使用createCollection等操作的示例
[4]https://docs.wso2.com/display/DSS320/MongoDB+Sample
[3]https://docs.wso2.com/display/DSS320/MongoDB 向Shavantha致敬
相关文章