解答例 - 実習課題4 - 4.クッキーとセッション
(実習課題4)
実習課題3のプログラムを改良しなさい。
- ブラウザでクッキーを無効にしても動作できるようにする事。
解答例
/*
* SessionServlet.java
* TECHSCORE Java Servlet4章 実習課題4
*
* Copyright (c) 2004 Four-Dimensional Data, Inc.
*/
package com.techscore.servlet.chapter4.exercise4;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class SessionServlet extends HttpServlet {
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession();
Integer count = (Integer) session.getAttribute("count");
response.setContentType("text/html; charset=Shift_JIS");
if (count == null) {
count = new Integer(1);
} else {
count = (Integer) session.getAttribute("count");
}
String link = new String("servlet4-4");
link = response.encodeURL(link);
PrintWriter writer = response.getWriter();
writer.println("<html><head><title>Servlet4章Exercise4</title>");
writer.println("</head><body>");
writer.println("カウンタ:");
writer.println(count.toString());
writer.println("<br><a href=\"" + link + "\">リンク</a>");
writer.println("</body></html>");
session.setAttribute("count", new Integer(count.intValue() + 1));
}
}

