设置属性和获取属性不适用于会话

时间:2018-09-07 17:53:23

标签: java session java-ee

我的问题是我想在会话中存储多个值并检索它们,但是下面的代码不起作用,它显示空白输出

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
@WebServlet(urlPatterns = {"/ShoppingCart24"})
public class ShoppingCart24 extends HttpServlet {

protected void processRequest(HttpServletRequest request, 
HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    try (PrintWriter out = response.getWriter()) {

        out.println("<!DOCTYPE html>");
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet ShoppingCartServlet_24</title>");
        out.println("</head>");
        out.println("<body>");
        //out.println("<h1>Servlet ShoppingCartServlet_24 at " + 
    request.getContextPath() + "</h1>");
        String[] products = request.getParameterValues("product");
        HttpSession session = request.getSession(true);
        for (int i = 0; i < products.length; i++) {


        session.setAttribute("products"+"["+i+"]", "hey");
        session.setAttribute("products"+"["+i+"]", "hoi");
        session.setAttribute("products"+"["+i+"]", "uil");
        }
        out.println(session);
         for (int i = 0; i < products.length; i++) {
         HttpSession session1 = request.getSession(false);
        out.println(session1.getAttribute("products"+"["+i+"]"));
   }
    //            for (int i = 1; i <= products.length; i++) {
    //                session.setAttribute("Bag", 10*i);
     //                String str = (String)session.getAttribute("Bag");
   //                out.println(str);
    //            }
        //response.sendRedirect("ShoppingCartServletBill_24");


//out.println(str);

        out.println("</body>");
        out.println("</html>");
    }
}


@Override
protected void doGet(HttpServletRequest request, HttpServletResponse 
response)
        throws ServletException, IOException {
    processRequest(request, response);
}
/**
 * Handles the HTTP <code>POST</code> method.
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse 
response)
        throws ServletException, IOException {
    processRequest(request, response);
}
/**
 * Returns a short description of the servlet.
 *
 * @return a String containing servlet description
 */
@Override
public String getServletInfo() {
    return "Short description";
}// </editor-fold>

}

我在哪里错了?任何帮助将不胜感激

0 个答案:

没有答案