0

我是 JSP 的新手,对将值从 Servlet 传递到呈现的 JSP 页面有一些疑问。

目前,我从表中获取参与者列表,并在请求对象中创建一个新属性并在我的 JSP 页面中访问该对象。

有没有其他方法可以将值从 servlet 传递给 JSP?

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("Im in actorsservlet");
        Actors acrs = new Actors();
        ArrayList<Actor> actorslist = null;
        try {
            actorslist = acrs.getactors();
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        for (Actor ac:actorslist)
            System.out.println(ac.firstname);
        request.setAttribute("actorslist", actorslist);
        RequestDispatcher dispatcher = request.getRequestDispatcher("getactors.jsp");
        //response.sendRedirect("getactors.jsp");
        dispatcher.forward(request, response);
        return;
4

1 回答 1

0

您可以将属性添加到会话而不是请求。所以让我们看看我是否记得正确

session.setAttribute("actorslist", actorslist);

需要注意的是:这将允许您从 Web 应用程序中的任何 jsp 访问它。但是会话变量可能很棘手。您可以在此处查找访问 JSP 中不同范围的 EL 示例。

它可能看起来像:

${sessionScope.actorslist}    //<- the whole list
${sessionScope.actorslist[0]} //<- this first actor in the list

祝你好运。快乐编码。

于 2013-11-13T00:33:21.570 回答