gpt4 book ai didi

java - RESTful 服务无法返回正确的 JSON 格式

转载 作者:行者123 更新时间:2023-11-30 07:54:02 24 4
gpt4 key购买 nike

我的资源如下,我试图以json格式返回mongo表中的所有文档。

@Path("/myresource")
@GET
@Produces( MediaType.APPLICATION_JSON)
public ArrayList<DBObject> getMongoObject() throws Exception {
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
DB db = mongoClient.getDB("zapshop");
DBCollection collection = db.getCollection("admin");
DBCursor cursor = collection.find();
DBObject object = cursor.next();
ArrayList<DBObject> token = new ArrayList<DBObject>();
token.add(object);
while (cursor.hasNext()) {
object = cursor.next();
token.add(object);
//System.out.println(token);
}
if (object == null) {
throw new WebApplicationException(Response.Status.NOT_FOUND);
}
return token;
}

这将返回 JSON,其中包含:

[{"type":"dbObject"},{"type":"dbObject"}]

但是当我在控制台中打印出 token 时,它包含正确的集合,即:

{
"_id" : ObjectId("55fc4844f7aea67825dae9a1"),
"login_id" : "sam",
"password" : "***"
}

{
"_id" : ObjectId("56110506d7ca91f604065fdc"),
"login_id" : "bam",
"password" : "***"
}

这就是我想要它返回的内容。我哪里出错了,请尝试提供一个示例,因为我是 RESTful 服务的新手。

最佳答案

你应该这样做:

public String getMongoObject() throws Exception {
.......
.......
return token.toString();
}

来自docs :

toString

public String toString()

Returns a JSON serialization of this object

关于java - RESTful 服务无法返回正确的 JSON 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32935841/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com