java サーブレット セッションの使用方法
たびたび質問してすいません
eclipse tomcatを使ったクイズの問題ですが1問目から回答を保持したまま2問目に移動する方法が分かりません、
作りかけが下にあります,これだと1問目から3問目に2問目を飛ばしていってしまいます
条件
使用できるのはPage1.java・Page2java・web.xmlのみ
表示したいページはこんな感じです
Page1の問題
データ通信の通信速度や通信手順の取り決めは?
○ Aプログラム
○ Bプロトコル
○ Cプロファイル
○ Dプロメテウス
Page2へ進む
Page2の問題
1MBを1KBに換算すると?
○ A1024
○ B1022
○ C1028
○ D1026
Page3へ進む
Page3
問題1は正解/不正解です
問題2正解/不正解です
問題1
package servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class UseSession1 extends HttpServlet{
String html;
String html1="<!doctype html><html lang=ja><head><meta charset=utf-8><title>UseSession1</title></head></body>";
String html2="<form action=UseSession1 method=post><table><tr><td><input type=radio name=pp value=Aプログラム>Aプログラム<br>"+
"<input type=radio name=pp value=Bプロトコル>Bプロトコル<br>"+
"<input type=radio name=pp value=Cプロファイル>Cプロファイル<br>"+
"<input type=radio name=pp value=Dプロメテウス>Dプロメテウス</td></tr></table><br>"+
"<input type=submit value =送信><input type=reset value=リセット></form></body></html>";
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
html=html1+html2;
out.println(html);
out.close();
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
request.setCharacterEncoding("UTF-8");
HttpSession session =request.getSession();
session.setAttribute("pp",request.getParameter("pp"));
ServletContext context=getServletConfig().getServletContext();
RequestDispatcher dispatcher =context.getRequestDispatcher("/UseSession3");
dispatcher.forward(request,response);
}
}
問題2
package servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class UseSession2 extends HttpServlet {
String html;
String html1="<!doctype html><html lang=ja><head><meta charset=utf-8><title>UseSession1</title></head></body>";
String html2="<form action=UseSession2 method=post><table><tr><td><input type=radio name=oo value=A1024>A1024<br>"+
"<input type=radio name=oo value=B1022>B1022<br>"+
"<input type=radio name=oo value=C1028>C1028<br>"+
"<input type=radio name=oo value=D1026>D1026</td></tr></table><br>"+
"<input type=submit value =送信><input type=reset value=リセット></form></body></html>";
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
html=html1+html2;
out.println(html);
out.close();
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
request.setCharacterEncoding("UTF-8");
HttpSession session =request.getSession();
session.setAttribute("oo",request.getParameter("oo"));
ServletContext context=getServletConfig().getServletContext();
RequestDispatcher dispatcher =context.getRequestDispatcher("/UseSession3");
dispatcher.forward(request,response);
}
}
お礼
ありがとうございました。 参考になりました。