Java 构建对Ajax调用的JSON响应
我尝试在servlet中构建JSON响应。 答案应该是这样的:Java 构建对Ajax调用的JSON响应,java,Java,我尝试在servlet中构建JSON响应。 答案应该是这样的: { "firm1":["firm1project1","firm1project2","firm1project3"], "firm2":["firm2project1","firm2project2","firm2project3"], "firm3":["firm3project1","firm3project2","firm3project3"], "firm4":["firm4project1","firm4proje
{
"firm1":["firm1project1","firm1project2","firm1project3"],
"firm2":["firm2project1","firm2project2","firm2project3"],
"firm3":["firm3project1","firm3project2","firm3project3"],
"firm4":["firm4project1","firm4project2","firm4project3"]
}
下面是我如何做到这一点的:
对数据库进行查询以确定我有多少“公司”(这些也是JSON响应的键):
然后(这里的查询是表firms
和projects
的内部联接,以仅获取指定公司的项目):
以下是我使用的查询:
query="select"+
" PROJECT_NAME"+
" from PROJECTS"+
" inner join FIRMS"+
" on FIRMS.FIRM_ID=PROJECTS.FIRM_ID"+
" where FIRMS.FIRM_ID="+"'"+aFirms.get(i)+"'";
我已经解决了这个问题。
我改变了路线:
jsonOutputObject.put(aFirms.get(i), aProjects);
aProjects.clear();
致:
然后离开队伍:
jsonOutputObject.put(aFirms.get(i), aProjects);
aProjects.clear();
未注释
此解决方案运行良好。您使用什么JSON编写器?还是你把它编码了?您能提供更多的信息吗?您当前使用的查询是什么?
jsonOutputObject.put(aFirms.get(i), aProjects.toArray());
aProjects.clear();