Goods:查询某个用户的购物车条目以及添加购物车条目

CartItemDao

 1 //查询某个用户的某本图书的购物车条目是否存在
 2     public CartItem findByUidAndBid(String uid,String bid) throws SQLException
 3     {
 4         String sql="select * from t_cartitem where uid=? and bid=?";
 5         Map<String,Object> map=qr.query(sql, new MapHandler(),uid,bid);
 6         CartItem cartItem=toCartItem(map);
 7         return cartItem;
 8     }
 9
10     //修改数量
11
12     public void updateQuantity(String cartItemId,int quantity) throws SQLException
13     {
14         String sql="update t_cartitem set quantity=? where cartItemId=?";
15         qr.update(sql,quantity,cartItemId);
16     }
17
18     //添加cartItem
19
20     public void addCartItem(CartItem cartItem) throws SQLException
21     {
22         String sql="insert into t_cartitem(cartitemId,quantity,bid,uid)"+
23       " values(?,?,?,?)";
24         Object[] params={cartItem.getCartItemId(),cartItem.getQuantity(),
25                 cartItem.getBook().getBid(),
26                 cartItem.getUser().getUid()};
27         qr.update(sql,params);
28
29
30     }
31     //把一个map映射成一个cartItem
32     private CartItem toCartItem(Map<String,Object> map)
33     {
34         //
35         if(map==null||map.size()==0) return null;
36         //1、把Map
37         CartItem cartItem=CommonUtils.toBean(map, CartItem.class);
38         Book book=CommonUtils.toBean(map, Book.class);
39         User user=CommonUtils.toBean(map, User.class);
40         cartItem.setBook(book);
41         cartItem.setUser(user);
42         return cartItem;
43
44     }
45
46     //把多个map (List<Map>)映射成多个CartItem(List<CartItem>)
47
48     private List<CartItem> toCartItemList(List<Map<String,Object>> mapList)
49     {
50         List<CartItem> cartItemList=new ArrayList<CartItem>();
51         for(Map<String,Object> map:mapList)
52         {
53             CartItem cartItem=toCartItem(map);
54             cartItemList.add(cartItem);
55         }
56         return cartItemList;
57     }
58
59     //通过用户查询购物车条目
60     public List<CartItem> findByUser(String uid) throws SQLException
61     {
62         //多表查询
63         String sql="select * from t_cartitem c,t_book b where c.bid=b.bid where uid=? order by c.orderBy";
64         List<Map<String, Object>> mapList=qr.query(sql, new MapListHandler(),uid);
65
66         return toCartItemList(mapList);
67
68     }

CartItemService

 1 public List<CartItem> myCart(String uid)
 2     {
 3         try {
 4             return cartItemDao.findByUser(uid);
 5         } catch (SQLException e) {
 6             // TODO Auto-generated catch block
 7             throw new RuntimeException(e);
 8         }
 9
10     }
11
12     //添加条目
13     public void add(CartItem cartItem)
14     {
15         //使用uid bid 看条目是否存在  _cartItem 加上下划线表示从数据库传过来的数据
16         try {
17             CartItem _cartItem=cartItemDao.findByUidAndBid
18                     (cartItem.getUser().getUid(), cartItem.getBook().getBid());
19             if(_cartItem==null) //如果没有原来这个条目 添加条目
20             {
21                 cartItem.setCartItemId(CommonUtils.uuid());
22                 cartItemDao.addCartItem(cartItem);
23             }
24             else{
25                 //如果原来有这个条目 修改数量
26                 int quantity=cartItem.getQuantity()+_cartItem.getQuantity();
27                 //_cartItem.setQuantity(quantity);
28                 //修改老条目
29                 cartItemDao.updateQuantity(_cartItem.getCartItemId(), quantity);
30
31             }
32         } catch (SQLException e) {
33             throw new RuntimeException(e);
34         }
35     }
时间: 2024-10-16 00:59:06

Goods:查询某个用户的购物车条目以及添加购物车条目的相关文章

网上图书商城项目学习笔记-013 添加购物车及我的购物车

一.流程分析 1.购物车模块 2.我的购物车分析 3.添加条目到购物车 二.代码 1.view层 (1)top.jsp 1 <a href="<c:url value='/CartItemServlet?method=myCart'/>" target="body">我的购物车</a> (2)desc.jsp 1 <form id="form1" action="<c:url value=

ECSHOP添加购物车加图片飞入效果

为ECSHOP的添加购物车,加入图片飞入效果. 首先: 在goods.dwt中查找添加购物车按钮: 为添加购物车按钮加上id: 例如: <a id="iproduct_{$goods.goods_id}" href="javascript:{addToCart({$goods.goods_id})"> <img src="images/bnt_cat.gif" /></a> 然后:在js中加入: <scr

用户购物车,实现添加商品的功能!

一.接口和实现类 package com.aaa.dao; import java.util.List; import java.util.Map; public interface IProductDAO { List<Map<String,Object>> getAllProduct(); /** * 获得商品的id * @param pid * @return */ Map<String ,Object>getProduct(String pid); /** *

oracle查询所有用户表的表名、主键名称、索引、外键等

1.查找表的所有索引(包括索引名,类型,构成列): select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表 2.查找表的主键(包括名称,构成列): select cu.* from user_cons_columns cu, user_constr

linux主机中查询当前用户命令总结

linux中查询当前用户的命令总结 1.w命令查看当前用户 [[email protected] /]# w 04:31:52 up  1:45,  2 users,  load average: 0.00, 0.01, 0.05 USER     TTY        FROM             [email protected]   IDLE     JCPU   PCPU   WHAT root       tty1                                02

查询Lync用户登录服务器和登录客户端类型

在实际运维Lync Server 2013/Skype for Business Server 2015过程中,难免会要查询一些用户登录的信息做辅助判断一些事务. 例如: 1.查询某一用户登录Lync/SfB前端池那一台服务器? 2.查询某一用户最后一次注册前端池的时间? 3.查询某一用户登录Lync/SfB使用客户端类型? 4.查询某一台前端服务器有那些用户登录? 官方有一条命令可以查,但是所查询的信息很有限,很难满足个性化的需求. 官方命令: Get-CsUserPoolInfo 链接:ht

查询当前用户的表

1.查询当前用户的所有表 select * from dba_tables 2.查询当前用户自己建的表 select * from tab

SQL Server 2008 查询所有用户表

SQL Server 2008 查询所有用户表的T-SQL语句是: SELECT * FROM sysobjects WHERE [xtype] = 'U' 或者是: SELECT * FROM sysobjects WHERE [type] = 'U' 关于xtype和type的区别,下篇日志里会讲到.SQL Server 2008 查询所有用户表

Oracle查询当前用户的信息

一.查看当前用户信息:1.查看当前用户拥有的角色权限信息:select * from role_sys_privs;2.查看当前用户的详细信息:select * from user_users;3.查看当前用户的角色信息:select * from user_role_privs; 总结:ORACLE中数据字典视图分为3大类,用前缀区别,分别为:USER,ALL 和 DBA,许多数据字典视图包含相似的信息. USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息.ALL_*:有关用户可