9 Nisan 2018 Pazartesi

Servlet HttpServletResponse Arayüzü

Giriş
Şu satırı dahil ederiz.
import javax.servlet.http.HttpServletResponse;
Bu sınıf uygulama sunucusu tarafından yaratılır. Örneğin doGet metodu ile bize verilir.

addCookie metodu
Cookie "session id" bilgisini göndermek için kullanılabilir. Şöyle yaparız
Cookie cookie = ...;
response.addCookie(cookie);
getOutputStream metodu
Şöyle yaparız.
ServletOutputStream responseOut = response.getOutputStream();
getWriter metodu
Şöyle yaparız.
PrintWriter out = response.getWriter(); 
sendRedirect metodu
Redirect sadece Http Get için işe yarar. Http Post için kullanılamaz. Bu metod allta şuna benzer bir iş yapar.
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
response.setHeader("Location", url);
response.setHeader( "Connection", "close" );
Örnek
Şöyle yaparız.
response.sendRedirect("...");
Örnek
Şöyle yaparız.
String url = ...;
response.sendRedirect(url);
setContentType metodu
Sabitler
Şöyle yaparız.
response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
Metin
Şöyle yaparız.
response.setContentType("application/txt");
Şöyle yaparız.
response.setContentType("text/html");
Şöyle yaparız.
response.setContentType("text/html;charset=UTF-8");
Şöyle yaparız.
response.setContentType("application/json");
doGet ile JSON döndürmek için şöyle yaparız.
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
  List<String> list = new ArrayList<String>();
  list.add("item1");
  list.add("item2");
  list.add("item3");
  String json = new Gson().toJson(list);

  response.setContentType("application/json");
  response.setCharacterEncoding("UTF-8");
  response.getWriter().write (json);
}
setHeader metodu
Şöyle yaparız.
response.setHeader("foobar", "yes");
Şöyle yaparız.
response.setHeader("Content-Disposition", "attachment;downloadFile=d.pfd");
setStatus metodu
Örnek
Şöyle yaparız.
response.setStatus(200);
Örnek
Şöyle yaparız.
response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
Örnek
Şöyle yaparız.
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);

Hiç yorum yok:

Yorum Gönder