<% out.println("first line "); response.getWriter().write("second line "); %> 当使用浏览器访问该jsp页面时会什么结为什么先输出second line
时间: 2024-03-24 20:38:58 浏览: 150
java 中 System.out.println()和System.out.write()的区别
非常抱歉,我的前一条回答有误。正确的答案是:
当使用浏览器访问该JSP页面时,会输出以下内容:
```
second line first line
```
这是因为 `response.getWriter()` 返回的是一个字符流,而 `out` 对象是一个缓存的字符输出流。当使用 `response.getWriter().write()` 方法输出时,数据直接写入响应的字符流中,此时缓存的字符输出流 `out` 中的内容还没有输出。而当使用 `out.println()` 输出时,数据先写入 `out` 的缓存中,直到缓存满或者调用 `out.flush()` 方法才会输出到响应的字符流中。因此,`second line` 先被输出,然后才是 `first line`。同时,这种同时使用 `out` 和 `response.getWriter()` 输出的方式并不规范,应该只使用其中一种方式输出。
阅读全文