请问Ajax与后台交互时,从后台返回字符串 只能是以输出流的形式返回到浏览器吗

我用Ajax与后台进行交互,后台大部分都是通过 getWriter().println()这种形式返回的

还可以返回json数据等,然后ajax解析处理对应数据。

是的,只能以输出流的形式返回数据。但数据格式可以自定,比如可以是文本、xml、json等等。

servlet是使用getWriter().print()输出,不是getWriter().println()这个有换行
struts2可以使用struts-json插件
springmvc 使用注解@ResponseBody

JS获取数据然后解析就是了,然后通过document.innerHTML写入到前台

ajax就支持字符串(responseText)和xml(responseXML)2中数据,IE特殊点支持2进制(responseBody),其他json类型都是后续代码处理的