⑴ servlet購物車的理解,還有就是session的運用,求指教。。
這下面是我當初做當當網demo的購物車設計筆記,希望對你有所幫助購物車功能
點擊購買,將產品添加到購物車,存儲購物車裡面,把購物車里的產品以列表的形式顯示出來,而且有變更功能刪除功能
藉助存儲用session,為了內聚性高些,封裝購物車組件
構建組件car
構建cart介面
方法public void add(int id)throws Exception;添加,盡可能傳入有用的參數
組建寫好以後,調用購買的action,AddCartAction,接受的請求參數,private id;寫一個baseAction類,來獲取session用的
public String execute(){
Cart cart=(Cart)session.get("cart");
if(cart=null){
cart=new CartImpl;
session.put("cart",cart);
}
cart.add(id);
session.put("cart", cart);
return success;
}
構建刪除的action,也需要參數id
public String execute(){
Cart cart=(Cart)session.get("cart");
if(cart=null){
cart=new CartImpl;
session.put("cart",cart);
}
cart.delete(id);
session.put("cart", cart);
return success;
}
我想使用cart組件,所以要提取再封裝
引入工廠,CartFactory干嗎用的?
這樣的,來個靜態的static返回一個對像,類型cart類型
public static Cart getCart(Map<Integer,Object> session){
Cart cart=(Cart)session.get(Constant.CART_SESSION);
if(cart=null){
cart=new CartImpl;
session.put("cart",cart);
}
return cart;
}
而後cart代碼以上全部更換代碼
定義共通的常量
public class Constant{
//session key
public static finnal String CART_SESSION="cart";
//application key
}
顯示購物車
劃分顯示
需要寫一個CartAction來初始化顯示界面
private List<CartItem> buylist;
private List<CartItem> dellist;
private double total;//總計金額
private double sale;//優惠金額 需要Cart對象往回傳,繼續在Cart里追加方法,public double totalDangPrice()throws Exception
public double totalshijiPrice()throws Exception;
private String execute{
獲取cart
通過那個CartFactory獲取cart
實例化上面的屬性,之後到頁面顯示
}
在 CartInterface中追加方法,public List<CartList>getPros(boolean buy)throws Exception();
從store將=buy標示的pro返回
已進入購物車界面先去查找,有沒有cookie存在
⑵ 求J2EE做一個簡單的購物車系統 servlet+javabean+html的最好,謝謝!
老兄,既然簡單,何不自己動手呢,豈不更有感覺。知道原理,這功能做起來不難。要內html是做什麼用,動態語言里容面,他只能做靜態頁面。寫一些js,提交表單,僅此而以,後台的值它一樣都獲取不了。
購物車,說白了就是伺服器內存裡面的一個對象,然後到客戶端去顯示。當然也可以永遠的保存到資料庫,這里就不說了。它可以是List,也可以是Set,可以put(商品),也可以remove(商品),還可以clear(商品),對象存放於session,隨時可以取用
⑶ jsp+servlet做的購物網站怎麼綁定用戶和購物車(實現每個用戶有獨立的購物車)
當然是持久化到資料庫中了;
建一個購物車表,用戶ID作為外鍵約束,添加刪除內購物車的時候直接容操作資料庫就行了;
如果要實現用戶不登錄也有購物車的功能,就加一個cookie,把商品存在cookie里,瀏覽器不關閉就都在;
⑷ java中servlet的購物車程序是怎麼樣的流程
購買過程就是選擇好物品放入購物車然後結賬
import java.util.Vector;public class gouwuche { /**
* @param args
*/
private static Vector vec = new Vector();
public static void gw(String name,int price,int sum)
{
gouwuchebean bean;
if(vec.size()>0)
{
//說明購物車內有物品 進來比對 看是否有一樣的東西 有的話讓數量+sum
bean = new gouwuchebean();
int j=0;//用來計數
for(int i=0;i<vec.size();i++)
{
gouwuchebean bean1 = (gouwuchebean)vec.get(i);
if(bean1.getName().equals(name))
{
j++;
bean.setName(name);
bean.setPrice(price);
bean.setSum(sum+bean1.getSum());
vec.remove(i);//去掉原來的數據
vec.add(bean);//放入新的數據
}
}
if(j==0)
{
bean.setName(name);
bean.setPrice(price);
bean.setSum(sum);
vec.add(bean);
}
}
else
{
//如果集合是空的說明購物車內沒有重復的 直接放入即可
bean = new gouwuchebean();
bean.setName(name);
bean.setPrice(price);
bean.setSum(sum);
vec.add(bean);
}
}
public static void show()
{
System.out.println("=============購物車當前物品==============");
int sum = 0;//用來計一共有幾件物品
int pric = 0;//用來計共消費金額
for(int i=0;i<vec.size();i++)
{
gouwuchebean bean = (gouwuchebean)vec.get(i);
sum = sum+bean.getSum();
pric = pric+(bean.getPrice()*bean.getSum());
System.out.println("*第"+(i+1)+"種物品-----名稱:"+bean.getName()+"---數量是:"+bean.getSum()+"---單價是:"+bean.getPrice()+"元----共計"+(bean.getSum()*bean.getPrice()+"元"));
}
System.out.println("物品共計"+sum+"件 共計金額是:"+pric+"元");
System.out.println("=============歡迎使用購物車==============");
}
public static void main(String[] args) {
// TODO Auto-generated method stub gw("電視機",100,1);//選擇購買物品 價格和數量還有名字
gw("可口可樂",100,9);
gw("電視機",100,9);
gw("西瓜",10,5);
gw("電動車",3000,2);
gw("奧迪A6",4000000,2);
show();
}}測試結果
⑸ JSP 與 Javascript Servlet 交互實現 添加購物車的功能
用form 的 request,或者用xmlhttprequest。
⑹ java購物車用servlet做,sql資料庫,能實現基本增加、刪除、修改商品,結賬,然後下訂單,求源代碼
加入購物車的代碼:
//把商品保存到session中
HttpSession session=request.getSession();
List<Goods> list=(List) session.getAttribute("list");
int gid=Integer.parseInt(request.getParameter("gid"));
int num=Integer.parseInt(request.getParameter("num"));
Goods goods=null;
if(list==null || list.size()<0){
list=new ArrayList();
}else{
for (Goods g : list) {
if(g.getGid()==gid){
goods=g;
g.setSum(g.getSum()+num);
break;
}
}
}
if(goods==null){
goods=goodsDao.queryGoodsByG_id(gid);
goods.setSum(num);
list.add(goods);
}
session.setAttribute("list", list);
request.getRequestDispatcher("/index.jsp").forward(request, response);
增加、刪除、修改商品差不多,只是sql語句不同
⑺ 如何用servlet寫一個簡單的購物車系統
一個不用連接資料庫的方法是為每個用戶創建一個session,在這個session裡面存一個List放用戶內的商品,以後當每容次需要放入是都可以先用session來獲取這個List以後再往List裡面添加你的商品,最後需要結賬的時候只要把這個List裡面的元素遍歷出來就可以了
⑻ 用J2EE實現一個購物車的功能,需要有源代碼,在myEclipse中能打開,求各位高手指教
是把你抄買的物品加入購物車吧!我知襲道這樣的一個思路:當你點擊商品時,點擊購買此物品,就進入了servlet類里,然後在servlet類裡面,你先要判斷是否存在此商品,如果存在則保存在session里,如果不存在則重新new一個集合,再保存到session里,然後重定向到JSP界面。當然,servlet類要調用了Dao包里的方法。思路大概流程是這樣的,具體代碼實現,我也不是很清楚!我覺得思路有,代碼慢慢來就可以去實驗,相信可以的!不知這個答案你是否滿意。
⑼ jsp+servlet怎樣實現網上購物車功能
利用cookie去寫應該可以