各位大侠,怎么把查询到的内容提交到购物车
如 书名称 单价 出版社 加入购物车
A 12 XXX 加入购物车当点击购物车的时候跳到购物车界面
书名称 单价 出版社
A 12 XXX
下单 继续购物购物车不要用数据库,用session,这样应该怎样设计,各位大侠帮帮忙,急急急!!!
如 书名称 单价 出版社 加入购物车
A 12 XXX 加入购物车当点击购物车的时候跳到购物车界面
书名称 单价 出版社
A 12 XXX
下单 继续购物购物车不要用数据库,用session,这样应该怎样设计,各位大侠帮帮忙,急急急!!!
解决方案 »
- java 真分页在线等
- 求排序,javascript实现(不用数据库)
- 怎么把服务器端的用户信息先存储再发送到客户端?
- 大家来谈谈大型门户网站的后台管理
- 如何在JSP中使用SQL查询的结果
- 很简单的问题,谁告诉我?
- 请问session.putValue()和session.setAttribute()有啥区别?可以设int型的吗?
- Jrun使用问题求教!!
- 请教一下如何在Microsoft Internet explorer中修改浏览器的设置,我想看到Cookie的工作过程!
- 这应该怎么解决
- org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob错误
- hibernate session缓存疑问
<a href="add.do?bookId=${bookId}">加入购物车</a>2.action
String bookId = request.getParameter("bookId");
Book book = BookFaceFactory.getBookById(bookId);
List<Book> books = (List<Book>)request.getSession.getAttribut("ShoppingCar");
if (books == null) {
List<Book> bookList = new ArrayList<Book>();
bookList.add(book);
request.getSession().setAttribute("ShoppingCar",bookList);
} else {
if (!books.contains(book)) {
books.add(book);
}
request.getSession().setAttribute("ShoppingCar",books);
}
package com.project.servlet;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import com.project.dao.ProductDao;
import com.project.database.OperatorDataBase;
import com.project.javabean.ProductEnity;public class ShopCartServlet extends HttpServlet { List<ProductEnity> list = new ArrayList<ProductEnity>();
ProductDao pd = new ProductDao();
OperatorDataBase opd = new OperatorDataBase();
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
ResultSet rs = null;
boolean b = true;
String id = request.getParameter("pi_id");
int pi_id = Integer.parseInt(id);
String sql = "select * from productinformation where pi_id = ?";
try {
if(list != null) //如果list不为空,就去找到有没有重复的商品
{
for(ProductEnity o : list)
{
if(o.getPi_id() == pi_id)
{
o.setCount(o.getCount() + 1); //找到了重复的商品就把该商品的原来数量加1
b = false; //修改了商品的数量,就不再将数据添加到list中
break;
}
}
}
if(b)
{
rs = opd.executeQuery(sql, pi_id);
while(rs.next())
{
ProductEnity pe = new ProductEnity(rs.getInt(1),rs.getString(2),rs.getInt(3),rs.getInt(4), 1, rs.getString(5));
list.add(pe);
}
}
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}finally
{
try {
opd.close(rs);
} catch (SQLException e) {
e.printStackTrace();
}
}
HttpSession session = request.getSession();
session.setAttribute("shopcharlist", list);
session.setAttribute("order", list);
response.sendRedirect("shopcar.jsp");
}}/**
这里只有servlet的代码,其中还有javabean ,dao我就不发了,你就看个思路把, 思路就是,session 中保存的是list,list中保存的是商品表的实体对象,当点击添加到购物侧的时候,把这个商品的ID发送到servlet中,去sesson中去找这个商品ID,如果找到了就把商品数量加1,如果没找到, 就从数据库中查询这个商品的数据,并讲数据BEAN放到list中,list在放到session中,
**/