Java Tutorial/Servlet/Buffer

Материал из Java эксперт
Перейти к: навигация, поиск

Keep Client Alive By Setting Buffer Size

   <source lang="java">

import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import java.util.*; public class MyServlet extends HttpServlet {

 public void doGet(HttpServletRequest req, HttpServletResponse res)
                              throws ServletException, IOException {
   res.setContentType("text/html");
   // Ask for a 16K byte response buffer; do not set the content length
   res.setBufferSize(16 * 1024);
   PrintWriter out = res.getWriter();
   out.println("<HTML>");
   out.println("<HEAD><TITLE>Hello World</TITLE></HEAD>");
   out.println("<BODY>");
   out.println("Less than 16K of response body");
   out.println("</BODY></HTML>");
 }

}</source>





Servlet: Set Buffer Size

   <source lang="java">

import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import java.net.*; public class MyServlet extends HttpServlet {

 public void doGet(HttpServletRequest req, HttpServletResponse res)
                              throws ServletException, IOException {
   res.setBufferSize(8 * 1024); // 8K buffer
   res.setContentType("text/html");
   PrintWriter out = res.getWriter();
   int size = res.getBufferSize(); // returns 8096 or greater
   // Record the default size, in the log
   log("The default buffer size is " + size);
   out.println("The client won"t see this");
   res.reset();
   out.println("And this won"t be seen if sendError() is called");
   if (req.getParameter("important_parameter") == null) {
     res.sendError(res.SC_BAD_REQUEST, "important_parameter needed");
   }
 }

}</source>