我正在构建“购物车”页面,我有项目和按钮列表,它们应该将该特定项目保存在 Cookie 对象中。
这是我将项目打印到网页的代码
Cookie c;
while(rs.next())
{
out.println("<div id=\"aaa\">");
out.println("<div id=\"bbb\" style=\"background-image:url("+rs.getString("poster")+"); background-repeat: no-repeat; background-size:cover;\">"+"</div>");
out.println("<div id=\"ccc\">");
out.println("<h2>"+rs.getString("name")+"</h2>");
out.println("<p>Category: <em>" + rs.getString("Category")+"</em></p>");
out.println("<p>Size: "+rs.getDouble("size")+"</p>");
out.println("<p>Publisher: "+rs.getString("publisher")+"</p>");
out.println("<p>Price:"+rs.getDouble("price")+"</p>");
c = new Cookie(rs.getString("name"), Double.toString(rs.getDouble("price")));
out.println("<footer class=\"align-center\">");
out.println("<a href=\"Cart\" target=\"_blank\" class=\"button alt\">Open</a>");
out.println("</footer>");
out.println("</div>");
out.println("<div id=\"ddd\"></div>");
out.println("</div>");
out.println("<hr />");
}
我想要的正是按下此按钮后,cookie 对象将填充商品名称和价格。
out.println("<footer class=\"align-center\">");
out.println("<a href=\"Cart\" target=\"_blank\" class=\"button alt\">Open</a>");
out.println("</footer>");
最佳答案
您可以传递特定产品的值,即 name,price etc
通过在 <a href="">
中传递该值并在您的 cart
中获取该值页面和使用request.getParameter("something")
获取传递的该项目的值并保存在 cookies
中如下所示:
String name=rs.getString("name");
String price=Double.toString(rs.getDouble("price"));
out.println("<footer class=\"align-center\">");
//passing value in url
out.println("<a href=\"Cart?name="+name+"&price="+price\" target=\"_blank\" class=\"button alt\">Open</a>");
out.println("</footer>");
然后在你的 cart page
中如下所示:
String name=request.getParameter("name");//getting value from url
String price=request.getParameter("price");
Cookie ck=new Cookie("name",name);//creating cookie object name
response.addCookie(ck);//adding cookie in the response
另外,不要使用html
在你的servlet instead put this in jsp
关于java - 如何使用 <a> 元素在 cookie 中保存信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56317748/