在spring开放时,相信 @ResponseBody 很多人都已经接触到,该注解的作用是将方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML;有时因一些转换器出问题而无法工作,所以我们有时需要写一个能向 respose 写入某些的内容,比如JSON字符串或文本性数据,这样一来转换问题我们可以按其它方式进行,所以我们可以把向 response 写入内容的功能可以写出一个公共的方法,例如:
public void print2Client(HttpServletResponse response,String retValue) throws Throwable{ //function to write content to client with utf-8 coding response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); out.print(retValue); out.flush(); out.close(); out = null; }
其实这里就是我们在 JSP 页面中直接使用的 out 对象的功能,只不过这里的功能是在 Java 代码中使用,如果对注解不熟悉不妨就使用这个,对于自己写的函数可控性是不是更好呢?
好了,欢迎拍砖讨论...