PrintWriter pw = response.getWriter();
pw.close();----------------------------------------------④
Cookie c = new Cookie("myname", "hero");
c.setMaxAge(3600);
response.addCookie(c);--------------------------------------①
添加cookie在pw.close()之后 是不可以的,查看cookie会发现没有添加成功。
原因:
org.apache.catalina.connector.ResponseFacade源码片段
public void addCookie(Cookie cookie) {
if (isCommitted())
return;--------------------------------②
response.addCookie(cookie);---------------③
}
对于①,将在②处return,所以执行不到③,
原因:④处pw.close();会使isCommitted()的值为TRUE。