【发布时间】:2015-05-21 06:32:06
【问题描述】:
我有一个要求,其中 json 数组响应应该是这样的
[{"rank":231,"title":"猎人之夜"},{"rank":232,"title":"加勒比海盗:黑珍珠号的诅咒"},{"rank":233,"title":"Lagaan:印度往事"},{"rank":234,"title":"天空之城"}]
它由 android 客户端接收到的这个响应 n 它会相应地解析,不知何故我无法生成正确的响应结构。
现在非常感谢您的帮助
@WebServlet("/JsonHost")
public class JsonHost extends HttpServlet {
private static final long serialVersionUID = 1L;
int rank;
int title;
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
// get request parameters for userID and password
String[] movie = {
"The Shawshank Redemption",
"The Godfather",
"The Godfather: Part II",
"The Dark Knight",
"Pulp Fiction",
"Schindler's List",
"12 Angry Men"..............};
int offset=0;
int limit=20;
if (request.getParameter("offset") != null)
offset = Integer.parseInt(request.getParameter("offset"));
System.out.println("offset value:" + offset);
JSONArray mJSONArray = new JSONArray(Arrays.asList(movie));
// System.out.println(gn.toJson(mJSONArray));
//out.println(gn.toJson(mJSONArray));
String m[][] = new String[20][20];
for (int rank = 0; rank < offset + limit && rank < movie.length; rank++){
for (int title = 0; title < offset+limit; title++) {
m[rank][title] = movie[title];
// System.out.println(m[rank][title]);
out.println(gn.toJson(m[rank][title]));
}
}
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
【问题讨论】:
-
你试过的请分享
-
谷歌关于
Gson和jackson -
我尝试过使用 Gson 的 m,只是我对如何生成正确的结构感到困惑,我已经编辑以包含一些代码,请检查 @NinadPingale
-
@Lrrr m 使用 Gson 但结构不会正确,我想我实现它的方式有问题,请检查
-
抱歉,它是 Gson 类的对象,我必须在编辑 @Lrrr 时将其遗漏