目的
Servletで処理した結果をJSPファイルに転送し、HTMLを生成する。これによって、MVCモデルにおけるViewの分離ができる。
方法
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { ArrayList<string[]> table = new ArrayList<string[]>(); // 転送データ <中略> req.setAttribute("table", table); req.getRequestDispatcher("jsp/view.jsp").forward(req, res);
上記のServletコード上のtableという変数をview.jspに渡したす場合、HttpServletRequest #setAttributeで変数を登録し、getRequestDispatcherとforwardでリクエストをフォワードする。
JSP側で登録した変数を取り出すには、下記のコードを用いる。
<% ArrayList<string[]> table = (ArrayList<string[]>)request.getAttribute("table"); %>