Java 在httpResponse主体中设置字符串

Java 在httpResponse主体中设置字符串,java,servlets,Java,Servlets,我需要帮助。在我目前的发展中,其中一项要求是: 服务器将返回200-OK作为响应(httpresponse) 如果结果验证了专家组成员,则服务器还必须 返回此专家的专家id 服务器将把小组成员id放在200-OK的主体内 以以下方式作出回应: 我可以把 String responseToClient=“3849303” 现在,将上述xml放在200-OK响应的主体中意味着什么?如何实现它?您只需获取servlet响应的输出流(或输出编写器),然后对其进行写入。有关更多详细信息,请参阅和 (或者简

我需要帮助。在我目前的发展中,其中一项要求是:

服务器将返回200-OK作为响应(httpresponse)

如果结果验证了专家组成员,则服务器还必须 返回此专家的专家id

服务器将把小组成员id放在200-OK的主体内 以以下方式作出回应:

我可以把

String responseToClient=“3849303”


现在,将上述xml放在200-OK响应的主体中意味着什么?如何实现它?

您只需获取servlet响应的输出流(或输出编写器),然后对其进行写入。有关更多详细信息,请参阅和


(或者简单地阅读任何servlet教程-如果没有在响应主体中包含数据的能力,servlet将非常无用:)

您可以按如下方式将XML直接写入响应:

本例使用
ServletResponse.getWriter()
,这是一个
PrintWriter
来向响应写入字符串

String responseToClient= "<tdcp><cmd><ack cmd=”Init”><panelistid>3849303</panelistid></ack></cmd></tdcp>";

httpServletResponse.setStatus(HttpServletResponse.SC_OK);
httpServletResponse.getWriter().write(responseToClient);
httpServletResponse.getWriter().flush();
String responseToClient=“3849303”;
httpServletResponse.setStatus(httpServletResponse.SC_OK);
httpServletResponse.getWriter().write(responseToClient);
httpServletResponse.getWriter().flush();

如果这是XML,Word已经通过将属性引号符号改为
而不是
破坏了您的东西


如果您想使用Java生成XML,那么值得一看。使用
httpServletResponse.getWriter().close()编写字符串这不是一个好主意。一般来说,关闭未被您打开的流不是一个好主意。这确实有帮助,但是,在使用JSON正文时,我没有立即收到正文。我必须添加以下内容:httpServletResponse.setContentType(“application/JSON”);httpServletResponse.setCharacterEncoding(“UTF-8”);
httpServletResponse.setStatus(HttpServletResponse.SC_OK);
String responseToClient= "<tdcp><cmd><ack cmd=”Init”><panelistid>3849303</panelistid></ack></cmd></tdcp>";

httpServletResponse.setStatus(HttpServletResponse.SC_OK);
httpServletResponse.getWriter().write(responseToClient);
httpServletResponse.getWriter().flush();