『壹』 各位java web大神,求幫忙看個超小的demo,實現一個簡單的購物車功能,出現了很讓人費解的問題,不看後悔
我運行了你的代碼獲取到的是同一個session啊,沒問題啊
『貳』 怎麼用java代碼來實現jsp網頁里的購物車里的模塊
購物車都是存在cookie里的,一般不登陸都是可以加入購物車的。加入購物車就寫到cookie里就ok了。
『叄』 java web 做購物車的大概思路,和實現步奏是什麼
購物車管理模塊主要功能有如下幾個部分:(1)創建購物車 當客戶登錄後,系統會給客戶創建一個購物車放入伺服器的Session會話中。使客戶在整個會話中都擁有一個相同的購物車。這里主要運用了Http協議中的會話機制,將購物車保存在客戶的會話中,這樣在整個客戶游覽不同頁面商品的過程中,都會使用同一個購物車對象。 具體執行步驟:(1)從客戶的請求對象中獲取Session會話對象(2)從會話對象中獲取購物車對象(3)判斷是購物車對象是不是空的,如果是空是就創建一個 /* * 在監聽到session被創建之後,就立即向session中添加一個購物車Car; */ public void sessionCreated(HttpSessionEvent arg0) { HttpSession session = arg0.getSession(); Cart cart=new Cart(); session.setAttribute("cart", cart); } /* * 從session中獲得購物車 */ Cart cart = (Cart) session.getAttribute("cart"); if (cart == null) { cart = new Cart(); }(2)向購物車中添加一個商品項 客戶在查看網頁上的一個商品時,當向伺服器發送一個「添加到購物車」的請求時,會執行這個功能。功能執行過程:(1)從客戶請求對象中獲取商品的ID(2)調用業務層的方法根據商品ID去數據查詢商品的信息,返回商品對象(3)從商品對象中獲取商品名,商品價格,來構建一個商品項對象(4)從Session會話中獲取購物車對象(5)調用業務層的方法來根據購物車對象和商品項對象來執行添加操作(6)將些商品項對象放入到購物車中 部分實現代碼: /* * 從資料庫中把商品取到; */ ProctService proctService = (ProctService) ServiceFactory.getInstance().getService(Globals.PRODUCT_SERVICE); Integer id = Integer.parseInt(request.getParameter("proctid")); Proct proct = proctService.getProctById(id); /* * 在向購物車中添加商品的時候會判斷商品是否已經存在, * 已存在的就不讓在加入了; */ if (cart.isExist(id)) { message = "該商品已經存在!請<a onclick='javascript:history.go(-1)'>返回</a>!"; request.setAttribute("message", message); return mapping.findForward("error"); } else { /* * 向購物車添加一個商品; */ cart.addCart(proct); session.setAttribute("cart", cart); return mapping.findForward("addcartsuccess"); }
『肆』 關於J2EE技術的網上購物車系統的代碼 用Java寫的
功能基本都已實現,如你所說,重復添加至購物車不能累加數量的bug還沒修復,希望能幫到你。
還有資料庫為oracle
『伍』 誰知道用javabean+jsp+servlet寫的購物車代碼怎麼寫
這個不是很復雜,留個郵箱,我發你吧
『陸』 javaweb開發 在購物車實現的問題
第3中比較好。第一種,javaweb本身在cookie中存放復雜對象就很麻煩,讀寫量大。第二種,客戶下內線sesson一般就會容被移除,這樣用戶下次登陸時就沒有之前購物車信息了。第3中,可以避免上面的不足
『柒』 JavaWeb開發中,怎麼根據用戶來實現單個的購物車,小白入門,請指教。能附上源碼跟容易理解謝謝!
1、這個如果連抄資料庫就很簡襲單了,cart資料庫,首先有id,proctID,然後userid,就是買家的id,然後PublishID,視為賣家id,其他的數據從proct表裡面讀,避免了重復存。
2、如果單純的起步學習,我還記得我小時候,老師講用session,用戶進入系統後如果要登錄就用用戶id去存session,不登錄就隨即生成一個id存session,購物車就根據用戶id讀session數據。
『捌』 急求一個用java web編寫的購物車程序,期末考試要用。
查詢的資料,找到三種方法:
1.用cookie實現購物車;
2.用session實現購物車;
3.用cookie和資料庫(購物車信息持久化)實現購物車;
=========================================================================
分析一下這三種方法的優缺點:
1.單純有cookie實現購物車,這樣的購物車不是很理想,設想一下,如果客戶端的瀏覽器把cookie給禁用了,
這種方法就會在這里流產...
2.session中保存購物車的信息,這個只是在一個會話中可用,如果用戶沒有登錄,或者說登錄了以後,添加購物車,在關閉瀏覽器
或者登出後,之前所添加的購物車通通都流產啦...
其實每次遇到不會的都來求助是很不方便的
如果你想了解和學習更多的JAVA編程,成為一名真正的JAVA高手,你可以來這個裙,前面三個數是四二六 中間是三九六 後面是二八四
把這串數字連起來就可以了,這是一個高手的學習裙,在這里你可以學習到書上學不到的知識,還有大牛相互討論並指導你解答哦!
3.我這里要說就是這種方法啦.....
主要的流程:
A.用戶登錄前的數據流:用戶在沒有登錄系統的時候,對喜歡的商品進行添加購物車,那麼這個時候,我們可以把購物車信息保存
到cookie中,這里會涉及到cookie的添加,修改操作;也即如果之前在cookie中不存對應的cookie,則就對cookie進行添加操作。
如果在cookie中存在對應的cookie,那麼,這時候,就要對cookie進行修改操作了(這里涉及到用戶對同一個商品進行多次添加購物車的情況)。
B.用戶登錄後的數據流:用戶在登錄後,系統首先做的第一件事就是去獲取對應的cookies,如果存在相關的購物車cookies,那麼就對該購物車
信息進行相應用戶User的持久化操作,要麼添加,要麼修改。(添加操作:該用戶所對應的購物車如果沒有相應的信息進行添加操作;修改操作:類似的,
如果存在對應用戶的購物車信息,就進行修改操作)。用戶登錄後,也可以進行購物車的添加操作,不過,這里不是添加到cookie中,而是直接持久化到
資料庫中。註:用戶登錄後的數據都是和資料庫打交道。
===========================================
以上就是我的見解 如果有什麼不懂可以問我 想學習的童鞋秒懂 供參考 滿意請採納
『玖』 求一個JAVA寫的網上商城源代碼,jsp+Mysql+Tomcat,要用到MVC框架。要實現購物車的。
電驢,馬士兵的視頻課上有下載。
『拾』 java web購物車
首先你應該對java有個基礎的了解,什麼是變數,什麼事關鍵字。我先給你每行都注釋下
//公共的類,類名為ShopingServlet 繼承父類HttpServlet
public class ShopingServlet extends HttpServlet {
實現父類方法doGet 意識就是通過get請求的就會進入這個方法,下面還有一個doPost方法就是通過post方式請求的會進入doPost,至於這兩個的區別:doGet安全性差,參數是在瀏覽器連接中直接顯示,然而doPost就是不會顯示的安全性要高,這也是最直觀的區別
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//通過request獲取session
HttpSession session=request.getSession();
//獲取參數為id的值
String id=request.getParameter("id");
//判斷id的值是否為null
if(id!=null)
{
//id不為空進入這裡面,在獲取參數為book的值,book的值為數組類型
Book[]book=(Book[])session.getAttribute("book");
在判斷book是否為null
if(book!=null)
{
//部位空進入,進行循環
for(int i=0;i<book.length;i++)
{
//判斷book數組中的第i個的BookId是否和之前的參數Id相同
if(book[i].getBookId().equals(id))
{
//相同,就把book數組中的第i個的id賦值為空
book[i].setid();
}
}
把當前book存入session中,變數名為book
session.setAttribute("book", book);
}
}
//跳轉到頁面/test4E/Shopping.jsp
response.sendRedirect("/test4E/Shopping.jsp");
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//調用上面的doGet方法
doGet(request,response);
}
}
下面的代碼和這個是重復的,不知道為什麼你要發布兩遍,你可以對比一下