java web實現(xiàn)網(wǎng)上手機(jī)銷售系統(tǒng)
本文實例為大家分享了java web實現(xiàn)網(wǎng)上手機(jī)銷售系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
前言
今天學(xué)長向大家分享一個 java web 畢業(yè)設(shè)計項目:
基于java web的網(wǎng)上手機(jī)銷售系統(tǒng)
一、項目設(shè)計
1. 模塊設(shè)計
業(yè)務(wù)流設(shè)計
前臺模塊設(shè)計
(1)商品展臺模塊:通過新品上架,分頁顯示特價商品,商品銷售排行展示網(wǎng)站的所有商品;
(2)商品查詢模塊:按商品的類別查詢商品的相關(guān)信息;
(3)購物車模塊:用戶添加商品至購物車,查看購物車中的商品,從購物車中移除不滿意的商品,清空購物車中的產(chǎn)品,修改所要購買的商品的數(shù)量;
(4)收銀臺模塊:用戶滿意購物車中的產(chǎn)品后進(jìn)行結(jié)賬并填寫訂單信息;
(5)用戶維護(hù)模塊:為用戶提供了用戶注冊、用戶登錄、用戶資料修改以及找回密碼的功能;
(6)訂單查詢模塊:用戶通過查看訂單能夠了解到自己的當(dāng)前訂單信息及歷史訂單記錄;
(7)公告瀏覽模塊:用戶通過瀏覽公告信息,能夠及時了解到網(wǎng)站最新的各種信息。
(8)留言模塊:客戶可以進(jìn)行留言給我們提意見,我們在不斷地改進(jìn)中前進(jìn)。
后臺系統(tǒng)功能模塊
(1)商品管理模塊:按類別查看商品,對商品的信息進(jìn)行維護(hù);
(2)用戶管理模塊:為了保護(hù)用戶的信息,此模塊與前臺用戶維護(hù)的區(qū)別是管理員只能查看用戶信息和刪除操作;
(3)管理員維護(hù)模塊:這是對管理員的信息進(jìn)行維護(hù),可以修改管理員的信息。
(4)訂單管理模塊:管理員查詢訂單,查看訂單詳細(xì)信息,刪除訂單信息,進(jìn)行訂單受理;
(5)公告管理模塊:管理員公告瀏覽,公告信息維護(hù);
(6)留言模塊:管理員可以查看客戶的留言,對留言進(jìn)行維護(hù)。
2. 實現(xiàn)效果
二、部分源碼
源碼較多,文章篇幅有限,這里就不放上來了,僅展示小部分關(guān)鍵代碼
部分代碼示例:
購物車核心代碼
在userAction中:
public String userLogin() { String sql="from TUser where userName=? and userPw=?"; Object[] con={userName,userPw}; List userList=userDAO.getHibernateTemplate().find(sql,con); if(userList.size()==0) { this.setMessage("用戶名或密碼錯誤"); this.setPath("qiantai/index.html"); } else { Map session= ServletActionContext.getContext().getSession(); TUser user=(TUser)userList.get(0); session.put("user", user); Cart cart=new Cart(); //用戶登陸成功后生成購物車,并將其放入到session中。 session.put("cart", cart); this.setMessage("成功登錄"); this.setPath("qiantai/index.html"); } return "succeed"; }
在buyAction中:
public String addToCart() { TGoods goods=goodsDAO.findById(goodsId); TOrderItem orderItem=new TOrderItem(); orderItem.setGoods(goods); orderItem.setGoodsQuantity(quantity); Map session= ServletActionContext.getContext().getSession(); Cart cart = (Cart)session.get("cart"); //將session中的cart取出,也就是上邊存儲在session中的cart cart.addGoods(goodsId, orderItem); session.put("cart",cart); //再把cart放入session //this.setMessage(""); this.setPath("myCart.action"); return "succeed"; } public String myCart() //獲取我的購物車 { return ActionSupport.SUCCESS; } public String orderQueren() //確認(rèn)提交訂單 { Map request=(Map)ServletActionContext.getContext().get("request"); return ActionSupport.SUCCESS; } public String orderSubmit() //訂單提交 { Map session= ServletActionContext.getContext().getSession(); Cart cart = (Cart)session.get("cart"); //將cart取出 TUser user=(TUser)session.get("user"); //將用戶取出 TOrder order=new TOrder(); order.setOrderBianhao(new SimpleDateFormat("yyyyMMddhhmmss").format(new Date())); //設(shè)定訂單編號 order.setOrderDate(new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date())); //確認(rèn)訂單的日期 order.setOrderZhuangtai("no"); //訂單狀態(tài)默認(rèn)為未受理 order.setOrderUserId(user.getUserId()); //設(shè)定訂單的用戶ID order.setOrderJine(cart.getTotalPrice()); //商品的價格 orderDAO.save(order); //保存訂單 for (Iterator it = cart.getItems().values().iterator(); it.hasNext();) //把訂單里的商品存入數(shù)據(jù)庫 { TOrderItem orderItem = (TOrderItem) it.next(); orderItem.setOrderId(order.getOrderId()); orderItem.setGoodsId(orderItem.getGoods().getGoodsId()); orderItemDAO.save(orderItem); } cart.getItems().clear(); //清空購物車 session.put("cart", cart); Map request=(Map)ServletActionContext.getContext().get("request"); request.put("order", order); return ActionSupport.SUCCESS; } Public String myOrder() //根據(jù)用戶查詢訂單 { Map session= ServletActionContext.getContext().getSession(); TUser user=(TUser)session.get("user"); //獲取用戶 String sql="from TOrder where orderUserId="+user.getUserId(); List orderList=orderDAO.getHibernateTemplate().find(sql); //調(diào)用orderDAO中的find方法,執(zhí)行sql語句 Map request=(Map)ServletActionContext.getContext().get("request"); request.put("orderList", orderList); return ActionSupport.SUCCESS; } public String orderMana() //訂單管理 { String sql="from TOrder order by orderUserId"; List orderList=orderDAO.getHibernateTemplate().find(sql); Map request=(Map)ServletActionContext.getContext().get("request"); request.put("orderList", orderList); return ActionSupport.SUCCESS; } Public String orderDel() //用戶自己刪除訂單 { TOrder order=orderDAO.findById(orderId); orderDAO.delete(order); Map session= ServletActionContext.getContext().getSession(); TUser user=(TUser)session.get("user"); this.setMessage("刪除成功"); this.setPath("myOrder.action?userId="+user.getUserId()); //跳轉(zhuǎn)到 myOrder.action return "succeed"; } public String orderDelByAd() //管理員刪除訂單 { TOrder order=orderDAO.findById(orderId); orderDAO.delete(order); String sql="delete from TOrderItem where orderId="+orderId; orderItemDAO.getHibernateTemplate().bulkUpdate(sql); this.setMessage("刪除成功"); this.setPath("orderMana.action"); return "succeed"; } public String orderShouli() //對訂單進(jìn)行受理 { TOrder order=orderDAO.findById(orderId); order.setOrderZhuangtai("yes");//已經(jīng)受理訂單 orderDAO.attachDirty(order); this.setMessage("受理訂單成功"); this.setPath("orderMana.action"); return "succeed"; } public String orderDetail() //訂單明細(xì) { String sql="from TOrderItem where orderId="+orderId; List orderItemList=orderItemDAO.getHibernateTemplate().find(sql); for(int i=0;i<orderItemList.size();i++) { TOrderItem orderItem=(TOrderItem)orderItemList.get(i); orderItem.setGoods(goodsDAO.findById(orderItem.getGoodsId())); } //取出訂單里的商品 Map request=(Map)ServletActionContext.getContext().get("request"); request.put("orderItemList", orderItemList); return ActionSupport.SUCCESS; }
在cart.java中
package com.util; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import com.model.TGoods; import com.model.TOrderItem; public class Cart //定義購物車類 { protected Map<Integer, TOrderItem> items; public Cart() //定義構(gòu)造方法 { if (items == null) { items = new HashMap<Integer, TOrderItem>(); } } public void addGoods(Integer goodsId, TOrderItem orderItem) //添加購物車 { if (items.containsKey(goodsId)) { TOrderItem _orderitem = items.get(goodsId); _orderitem.setGoodsQuantity(_orderitem.getGoodsQuantity()+ orderItem.getGoodsQuantity()); //如果購買商品重復(fù),則加上數(shù)量 items.put(goodsId, _orderitem); } else { items.put(goodsId, orderItem); } } Public void delGoods(Integer goodsId) //刪除購物車 { items.remove(goodsId); } public void updateCart(Integer goodsId, int quantity) //更新購物車的數(shù)量 { TOrderItem orderItem = items.get(goodsId); orderItem.setGoodsQuantity(quantity); items.put(goodsId, orderItem); } public int getTotalPrice() //計算總的價格 { int totalPrice = 0; for (Iterator it = items.values().iterator(); it.hasNext();) { TOrderItem orderItem = (TOrderItem) it.next(); TGoods goods = orderItem.getGoods(); int quantity = orderItem.getGoodsQuantity(); totalPrice += goods.getGoodsTejia() * quantity; //單價乘以數(shù)量 } return totalPrice; } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
springboot實現(xiàn)郵箱發(fā)送(激活碼)功能的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用springboot實現(xiàn)郵箱發(fā)送(激活碼)功能,文中的示例代碼簡潔易懂,有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-10-10java線程之用Thread類創(chuàng)建線程的方法
本篇文章介紹了,Thread類創(chuàng)建線程的方法。需要的朋友參考下2013-05-05idea集成shell運行環(huán)境以及shell輸出中文亂碼的解決
這篇文章主要介紹了idea集成shell運行環(huán)境以及shell輸出中文亂碼的解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08Java初級必看的數(shù)據(jù)類型與常量變量知識點
這篇文章主要給大家介紹了關(guān)于Java初級必看的數(shù)據(jù)類型與常量變量知識點的相關(guān)資料,需要的朋友可以參考下2023-11-11解決IDEA修改 .vmoptions 文件后導(dǎo)致無法啟動的問題
這篇文章主要介紹了解決IDEA修改 .vmoptions 文件后導(dǎo)致無法啟動的問題,需要的朋友可以參考下2020-12-12