Java 在MongoDB中将属性名称存储为url时出错

Java 在MongoDB中将属性名称存储为url时出错,java,mongodb,bson,Java,Mongodb,Bson,如何在mongo中存储以下文档,我在插入时遇到以下错误 文件: { "data": { "http://test.abc.com/xyz/xyz/displayname": "my Name" } } 错误: java.lang.IllegalArgumentException: Invalid BSON field name http://test.abc.com/xyz/xyz/displaynam

如何在mongo中存储以下文档,我在插入时遇到以下错误

文件:

{
    "data": {
        "http://test.abc.com/xyz/xyz/displayname": "my Name"
    }
}
错误:

java.lang.IllegalArgumentException: Invalid BSON field name http://test.abc.com/xyz/xyz/displayname
    at org.bson.AbstractBsonWriter.writeName(AbstractBsonWriter.java:494)
    at org.bson.codecs.DocumentCodec.writeMap(DocumentCodec.java:188)
    at org.bson.codecs.DocumentCodec.writeValue(DocumentCodec.java:172)
    at org.bson.codecs.DocumentCodec.writeMap(DocumentCodec.java:189)
    at org.bson.codecs.DocumentCodec.encode(DocumentCodec.java:131)
    at org.bson.codecs.DocumentCodec.encode(DocumentCodec.java:45)
    at org.bson.codecs.BsonDocumentWrapperCodec.encode(BsonDocumentWrapperCodec.java:63)

字段名不能包含空字符

顶级字段名不能以美元符号($)字符开头

否则,从MongoDB 3.6开始,服务器允许存储包含点(即…)和美元符号(即$)的字段名

相反,您可以存储两个字段。一个表示URI,另一个表示名称