摘 要:本文設計的平臺采用Struts2、Spring和Hibernate框架,并以MySQL為后臺數據庫進行開發。本平臺的實現,為學生提供一個便捷的網上交易的平臺,解決學生對二手物品的供需,提高校園的環境質量,同時對校園內資源的合理分配和綠色的生活方式也能起到一定的促進作用。
關鍵詞:Struts2;Spring;Hibernate
中圖分類號:TP311.52 文獻標識碼:A 文章編號:2096-4706(2018)05-0116-03
The Application of SSH in Second-hand Goods Online Trading
ZHANG Shengjiang,LIU Ping
(Nanchang Vocational College,Nanchang 330500,China)
Abstract:The platform designed in this paper adopts Struts2,Spring and Hibernate framework,and develops with MySQL as background database. The implementation of this platform provides a convenient platform for online trading for students to solve the students’ supply and demand of second-hand goods and improve the quality of the campus environment. At the same time,the rational distribution of resources in the campus and the green lifestyle can also play a certain role in promoting.
Keywords:Struts2;Spring;Hibernate
0 引 言
Spring是一個開源框架,優勢為采用了分層的架構模式,允許用戶任意選擇其中的模塊進行使用,因此可以用它把各種組件組裝在一起,而各組件之間不會相互影響,所以通過Spring會滿足開發人員對輕量級系統開發的一站式需求。其包含7個模塊,如圖1所示。
Struts2實現MVC機制,由接收到的客戶端的請求通過Struts2的配置文件中的信息,將請求發送到特定的Action實例中,在通過Action調用JavaBean模型來處理業務邏輯,之后通過配置文件信息找到需要響應表示到的JSP視圖,并響應給客戶端的瀏覽器。由于Struts替代了本來作為控制器的Servlet部分,用戶自定義編寫的Action進行業務邏輯處理,與Struts2的控制核心分離開來,進一步降低了系統中組件的耦合度和編程的難度。
在這種模式中,是離不開Hibernate的。常用的做法是利用Hibernate的映射文件來完成實體類的數據成員與數據庫表字段之間的映射,利用Hibernate配置文件來進行數據庫連接的相關配置以及完成JDBC的連接等相關操作,達到通過Hibernate來實現針對實體類的操作并完成與數據庫相關的操作。
1 核心模塊的實現
本平臺主要受眾人群為在校的大學生。通過對二手商品的發布購買來實現學校內資源的充分利用。學生可以通過訪問本系統,瀏覽和查找自己需求的二手商品,也可以將自己的二手物品通過本系統進行出售交易。用戶功能方面,本系統需要注冊才能進行商品的購買,瀏覽商品時點擊商品查看商品的詳細信息,點擊購買按鈕進入結算,之后可以對訂單的狀態進行查看,提交出售的商品信息要通過審核才能在平臺上展示。用戶對自己注冊時錄入的信息可以進行修改。管理員則可以對商品的信息、種類進行設置,可以對用戶進行管理,以及對系統界面上的公告新聞等進行管理和修改。系統主要分為兩個大的模塊:用戶模塊可細分為登錄注冊模塊與用戶功能模塊,對未注冊的用戶提供注冊本系統的操作,已經注冊的用戶可直接登錄本系統。用戶可以對自己的信息進行查看和修改密碼。進行商品購買,用戶通過翻看或查找來選擇自己心儀的物品,點擊購買提交自己購買商品的訂單。管理員模塊,通過登錄后臺界面對系統的信息數據進行操作,包括商品類別的管理、商品信息的增加和修改、對用戶的信息進行編輯、對訂單的狀態進行更改以及回復系統的留言等功能。
1.1 購物車實現
向購物車中添加商品時通過在Session中獲取購物車中的信息,如果找不到,則新創建一個,之后獲取當前已登錄用戶的id,如果不能查詢到用戶信息,則提示需要登錄才能進行操作。將從Session中獲取到的用戶id放入購物車中后,再判斷購物車中是否已經存在同樣的商品,如果存在,則對其數量加1,并更新購物車的數據,最后把新的購物車的信息放入到Session中。具體代碼如下:
HttpSession session=request.getSession();//取得See sion
Nc_Product product=productService.getProductById (productId);//通過id獲取商品實體
ShoppingCart shoppingCart=(ShoppingCart) session.getAttribute(\"shoppingCart\");
//獲取session中的購物車信息
if(shoppingCart==1){//找不到
shoppingCart=new ShoppingCart();
User currentUser=(User) session.getAttribute (\"currentUser\");//獲取用戶id
shoppingCart.setUserId(currentUser.getId());//加入購物車}
for(ShoppingCartItem scI:shoppingCartItemList){
if(scI.getProduct().getId()==product.getId()){
scI.setCount(scI.getCount()+1);//相同商品數量加1
break;}
}
1.2 訂單管理實現
通過后臺的訂單管理對用戶提交的購買物品的訂單進行查看和改變狀態,在此界面勾選訂單,點擊查看詳情可以看到訂單內包括的具體物品及其基本的信息。所謂改變狀態,由于本系統尚未實現網上支付功能,訂單的審核和狀態都交由管理員進行統一處理。訂單由買家提交后狀態為待審核,管理員改變其為通過審核表示訂單已經被賣家接受,當賣家與買家進行聯系時則改變狀態為已發貨,此類狀態買家可在個人中心處查看,關于此部分前文已經說明。當買家在個人界面點擊了確認收貨后則表示該項訂單的交易已經完成,訂單信息作為根據存儲在系統中供用戶查看。訂單管理界面如圖2所示。
通過判斷訂單表中標識的數值來確定要顯示的訂單狀態,部分代碼如下:
function checkorder(val,row){
if(val==1){return \"待審核\"; //標識為1為待審核狀態
}else if(val==2){return \"審核通過\"; //標識為2為審核通過狀態
}else if(val==3){
return \"賣家已發貨\"; //標識為3為發貨狀態
}else if(val==4){
return \"交易已完成\"; //標識為4為交易完成狀態}
其中前三種狀態由管理員在后臺進行編輯,最后交易完成則由買家點擊確認收貨按鈕來對訂單的狀態標識進行更改,雖然界面不同,但實現方法是一致的,更改該標識的部分代碼如下:
public void changemark(int val, String Onum) { //傳入要設置的標識數值以及訂單編號
List
String hql=\"update Order set status=? where orderNo=?\";//要執行的hql語句
object.add(status); object.add(Onum);
nc_shop.dao.executeHql(hql, param);//調用自定義的基本類執行hql語句}
1.3 用戶中心實現
用戶登錄后于主頁點擊自己的用戶名則可跳轉至用戶中心。界面如圖3所示。
用戶中心包含修改個人信息、修改密碼、提交商品、訂單管理幾項,修改個人信息即修改注冊時填寫的信息,輸入信息后點擊更改即可修改用戶表中用戶信息的內容,修改密碼則是修改用戶的登錄密碼,填寫原密碼以及新密碼,舊密碼核驗無誤即可成功修改密碼。提交商品則提供給用戶出售商品的界面,用戶通過填寫商品的信息以及上傳圖片給系統來展示自己要出售的物品,經由管理員在后臺審核通過后即可在系統的主頁上進行展示出售。訂單管理可查看自己在購買是提交的商品及訂單的狀態。最后于此界面確認收貨,完成交易的整個流程,之后訂單狀態就由確認收貨變為交易已完成。
1.4 二手商品管理
管理員通過商品管理模塊可實現對商品類別及具體商品信息的增加、刪除、修改,其界面如圖4所示。其中商品大類即為主頁標簽上方的類別,小類則是對大類的細化,如衣物包括西裝、運動服等。其功能包括類別的增加、修改和刪除。在后臺管理界面管理員通過選擇商品管理菜單,對此類信息進行編輯。
以刪除操作為例,選中列表中的選項,點擊刪除按鈕并確定對商品信息進行刪除,部分代碼如下:
$.post(\"product_delete.action\",{ids:ids},function(result)
if(result.success){//返回success提示成功
$.messager.alert(\"系統提示\",\"數據已成功刪除!\");
$(\"#dg\").datagrid(\"reload\");//從新加載表格
}
else{$.messager.alert(\"系統提示\",\"數據刪除失敗!\");}
//界面通過請求將商品id組傳到后臺,并對返回JSON結果進行判定,下面位后臺數據操作,完成則令JSON為success
for(int i=0;i Product product=productService.getProductById (Integer.parseInt(idsStr[i])); productService.deleteProduct(product);} result.put(\"success\", true);//令返回結果為success ResponseUtil.write(ServletActionContext.getResponse(), result);//工具類,用于編碼格式轉換,防止出現亂碼return 1; 2 結 論 本文對SSH進行了研究,并將SSH應用于校園二手商品交易平臺,實現了校園二手商品交易平臺的基本功能,該平臺解決了大學校園逢開學和畢業季,校園內出現各種攤點,影響校園秩序和形象,買賣雙方的交易效率低等問題,而且利用該平臺交易變得更加透明和放心,不僅能方便和滿足某些學生的需求,對校園內資源的合理分配和綠色的生活方式也能起到一定的促進作用。 參考文獻: [1] 王瑾.基于SSH框架下的校園網上交易平臺 [D].成都:電子科技大學,2014. [2] Krill,Paul. Jooby framework simplifies Java Web development [J]. InfoWorld.com,2016. [3] 阮喆.智能網上商城管理系統的設計與實現 [D].鞍山:遼寧科技大學,2015. [4] 李黎.基于SSH的網上商城的設計與實現 [D].成都:電子科技大學,2015. [5] 程曉萌.基于Web應用程序的商店在線交易系統(前臺) [D].天津:天津大學,2014. 作者簡介:章勝江(1977-),男,漢族,安徽東至人,碩士。從事信息技術管理。