本节书摘来自异步社区《servlet、jsp和spring mvc初学指南》一书中的第1章,第1.5节,作者:【加】budi kurniawan(克尼亚万) , 【美】paul deck著,更多章节内容可以访问云栖社区“异步社区”公众号查看
javax.servlet.servletresponse接口表示一个servlet响应。在调用servlet的service方法前,servlet容器首先创建一个servletresponse,并将它作为第二个参数传给service方法。servletresponse隐藏了向浏览器发送响应的复杂过程。
在servletresponse中定义的方法之一是getwriter方法,它返回了一个可以向客户端发送文本的java.io.printwriter。默认情况下,printwriter对象使用iso-8859-1编码。
在向客户端发送响应时,大多数时候是将它作为html发送。因此,你必须非常熟悉html。
注意:
还有一个方法可以用来向浏览器发送输出,它就是getoutputstream。但这个方法是用于发送二进制数据的,因此,大多数情况使用的是getwriter,而不是getoutputstream。
在发送任何html标签前,应该先调用setcontenttype方法,设置响应的内容类型,并将“text/html”作为一个参数传入。这是在告诉浏览器,内容类型为html。在没有内容类型的情况下,大多数浏览器会默认将响应渲染成html。但是,如果没有设置响应内容类型,有些浏览器就会将html标签显示为普通文本。
在清单1.1的myservlet中已经用过servletresponse。在本章以及后续章节中,还会看到在其他应用程序中也使用它。