孫遒
摘 要: 網(wǎng)上購物已經(jīng)普及,電子商務網(wǎng)站日漸增多,如何從這些網(wǎng)站中快速地選擇出自己喜愛的商品是一件不小的工作。提出一種電子易購的解決方法。該方法通過網(wǎng)絡爬蟲在整個電子商務網(wǎng)站系統(tǒng)上抓取有用的信息存儲在數(shù)據(jù)庫中,然后對相關數(shù)據(jù)進行分析,利用Spring+Struts2+Hibernate+MySQL技術(shù)實現(xiàn)了基于B/S模型架構(gòu)的網(wǎng)站展示給用戶,使用戶更了解各個商城電子商品之間的差異,進而選擇更適合自己的商品。通過網(wǎng)絡實驗,證明該方法行之有效。
關鍵詞: 電子易購; 電子商務; 流量; 網(wǎng)絡爬蟲
中圖分類號:TP274 文獻標志碼:A 文章編號:1006-8228(2017)02-41-04
0 引言
當今電子商務業(yè)務開發(fā)如火如荼。在法、德等歐洲國家,電子商務所產(chǎn)生的營業(yè)額已占商務總額的1/4,在美國已占1/3以上,而這些歐美國家電子商務的歷史也不過十幾年的時間。在美國,美國在線(AOL)、雅虎、電子港灣等著名的電子商務公司在1995年前后開始賺錢,IBM、亞馬遜書城、戴爾電腦、沃爾瑪超市等電子商務公司在各自的領域更是取得了令人不可思議的巨額利潤[1,5]。
中國電子商務始于1997年,如果說美國電子商務是“商務推動型”,那么中國電子商務則更多的是“技術(shù)拉動型”,這是在發(fā)展模式上中國電子商務與美國電子商務的最大不同[6,10]。在美國,電子商務實踐早于電子商務概念,企業(yè)的商務需求“推動”了網(wǎng)絡和電子商務技術(shù)的進步,并促成電子商務概念的形成。當Internet時代到來的時候,美國已經(jīng)有了一個比較先進和發(fā)達的電子商務基礎。在中國,電子商務概念先于電子商務應用,“啟蒙者”是IBM等IT廠商,網(wǎng)絡和電子商務技術(shù)需要不斷“拉動”企業(yè)的商務需求,進而引致中國電子商務的應用與發(fā)展。了解這一不同點是很重要的,這是中國電子商務發(fā)展的一大特點,也是理解中國電子商務應用與發(fā)展的一把鑰匙。
電子商務網(wǎng)站發(fā)展繁榮的今天 ,面臨多元化的電子商務網(wǎng)站。對于用戶來說不知道去哪里買電子產(chǎn)品而顯得十分頭痛。導航就是一個可以指導用戶購物的電子產(chǎn)品,為用戶選擇商品提供幫助,可使用戶更加方便、快捷,并防止不懂電子產(chǎn)品的用戶更優(yōu)惠的選擇適合自己的產(chǎn)品[11,14]。
1 系統(tǒng)結(jié)構(gòu)
電子易購軟件的模塊設計如圖1所示。
2 項目管理工具設計
Maven可以對第三方依賴庫進行統(tǒng)一的版本管理,其具有統(tǒng)一項目的目錄結(jié)構(gòu),可以保證所有項目的目錄結(jié)構(gòu)都是一樣的,目錄結(jié)構(gòu)統(tǒng)一的好處是,要找源代碼就去src/main/java/下,要找需要放到classpath下 的資源,就去src/main/resources/下。把軟件開發(fā)的過程劃分成了幾個經(jīng)典階段,比如先生成一些Java代碼,再把這些代碼復制到特定位置,然后編譯代碼,復制需要放到 classpath下的資源,再進行單元測試,單元測試都通過了才能打包和發(fā)布。Maven還支持多種插件,自動生成項目網(wǎng)站和報表。
使用Ant,最令人頭疼的就是要為不同的項目寫很多build.xml腳本,而且這些腳本還不太通用,現(xiàn)在可以使用Maven提供的這些經(jīng)典構(gòu)建階段,讓每個項目只經(jīng)過相同的步驟,從源代碼一步一步變成可以部署的成品。如果還要什么附加功能,則把對應的插件綁定到一個構(gòu)建階段上,那么到了執(zhí)行這個構(gòu)建階段時,就會執(zhí)行綁定的插件了。
如果說Ant可以使用ivy實現(xiàn)第三方依賴庫的統(tǒng)一管理,如果說Ant可以自己統(tǒng)一項目的目錄結(jié)果,如果說Ant支持插件更靈活,那么這些特性絕對沒有Maven強。
Maven可以自動為項目生成一個網(wǎng)站,里面包含了項目信息,參與人,項目管理相關的資源,第三方依賴庫,使用的插件,以及通過其他擴展插件生成的各種報表。Ant 使用某些插件也可以生成html格式的報表,但是各個報表之間都沒什么關聯(lián),不像Maven中將網(wǎng)站和報表都關聯(lián)在一起,查看起來十分方便。Maven是基于項目對象模型(POM),可以通過一小段描述信息來管理項目的構(gòu)建,報告和文檔的軟件項目管理工具。
通過MyEclipse創(chuàng)建Maven項目名為:gobuy,在main文件夾下建立webapp文件夾,將其作為Web的根目錄。在Maven的pom.xml文件中加入jar統(tǒng)一包進行管理。
3 系統(tǒng)構(gòu)架與實現(xiàn)設計
現(xiàn)在流行的框架有很多,例如Spring,Struts2,Hibernate等等。其中Spring+Hibernate+Struts2最為廣泛使用,并且可以把大學的所學應用于實際項目中。而且這三個都是輕型框架,很多代碼不用自己編寫,是目前中小公司用的最多的框架之一,若架構(gòu)搭得好,開發(fā)速度比java項目會提高不少,維護也比較方便,可拓展性強,加上一堆的開源,可以豐富項目。
即使是使用S2SH開發(fā),也有很多種形式,比如按配置文件,就分為配置文件寫在.XML文件中的,或者是配置在Spring的bean文件中的,又或者是零配置的全注解形式。Spring還可以對Struts2和Hibernate進行管理,完全不需要知道Struts2和Hibernate的實現(xiàn)代碼就可以編寫程序,實現(xiàn)簡單,快捷的敏捷式開發(fā)。Spring還會自動掃描被注解的類,然后創(chuàng)建在對象池中,在需要的時候取出使用,真正達到了即用即取的低耦合性。項目采用S2SH框架開發(fā),使用的注解形式取代配置文件。
4 爬蟲設計
手寫爬蟲和Heritrix的選擇。Heritrix是IA的開放源代碼,可擴展的,基于整個Web的,歸檔網(wǎng)絡爬蟲工程。它是很好的爬蟲框架,有很好的可擴展性。但其配置復雜,使用不是很方便,其機構(gòu)也極其復雜。所以這里新寫了一個爬蟲實現(xiàn),結(jié)合HtmlParser解析返回的頁面來實現(xiàn)功能。
爬蟲和多線程的實現(xiàn)(其中一個爬蟲為例):
通過Strust2標簽獲得從index.action中傳來的vgProductSku對象,值以獲得每個結(jié)果集,將對象中的屬性顯示在相應位置。頁面如圖3所示。
7 結(jié)束語
經(jīng)過三個月的時間完成了易購導航網(wǎng)站的開發(fā),基本功能都已實現(xiàn)。爬蟲采用多線程技術(shù),6個爬蟲在網(wǎng)絡上不斷爬行,相不干擾,獲得了大量的電子商品信息。可以對比商品信息,頁面美觀,操作簡單,有很好的用戶體驗??梢宰詴T,登錄,并在網(wǎng)站上下單,或去第三方網(wǎng)站上查看更詳細的商品信息。網(wǎng)站致力于對商品的分析,給用戶更多的選擇空間和更好的選擇條件。
本系統(tǒng)采用面向?qū)ο蟮拈_發(fā)原理,方便以后擴展新的功能。系統(tǒng)在開發(fā)過程中,無時無刻不考慮著爬蟲的性能優(yōu)化和用戶的體驗,將系統(tǒng)做的更好,讓功能更加完善。對于商品信息的對比,還可以進一步設計抓取商品評論、游覽次數(shù)、購買次數(shù)等信息,統(tǒng)一進行數(shù)據(jù)處理,給用戶提供更完整,更好的選擇。網(wǎng)站還可以進行更精確的商品分類和提供更準確的搜索。
系統(tǒng)給用戶網(wǎng)上購物帶來的是一個全新的體驗,給電子商務網(wǎng)站通過廣告和商品信息陳列帶來的是無限的流量收益。將來一定有更好的發(fā)展前景。
參考文獻(References):
[1] 王善發(fā),吳道榮.Java編程語言構(gòu)造方法研究[J].保山學院學
報,2011.2:23-25
[2] 孫媛,陳麗梅.數(shù)據(jù)結(jié)構(gòu)在Java語言中的實現(xiàn)[J].電腦學習,
2008.1:53-55
[3] 麻孜寧,伊浩,李祥.Java多線程并發(fā)系統(tǒng)中的安全性與公平
性[J].計算機技術(shù)與發(fā)展,2006.2:14-20
[4] 陳牧歌,王健.Ajax技術(shù)在Web開發(fā)中的應用[J].電腦學習,
2010.4:103-105
[5] 陸榮幸,郁洲,阮永良,王志強.J2EE平臺上MVC設計模式的
研究與實現(xiàn)[J].計算機應用研究,2003.3:108-200
[6] 黃海,朱躍龍.J2EE設計模式與框架技術(shù)的應用研究[J].計算
機與現(xiàn)代化,2006.5:15-19
[7] 劉星沙,羅昔軍.基于MVC模式的Struts和Spring整合框架的
研究與應[J].湘潭大學自然科學學報,2007.1:209-211
[8] 權(quán)寧一.基于JSP技術(shù)的企業(yè)電子商務系統(tǒng)[J].微處理機,
2005.6:147-151
[9] 張承光.電子物流網(wǎng)絡的實現(xiàn)與構(gòu)想[J].互聯(lián)網(wǎng)周刊,
1999.24:364-365
[10] 孫釗.我國電子商務發(fā)展的現(xiàn)狀與對策[J].經(jīng)濟學情報,
2000.4:67-69
[11] 諶燕,趙定遠.基于AJAX的異步Web開發(fā)模式[J].成都大
學學報(自然科學版),2007.4:244-246
[12] 雷麗秀.互聯(lián)網(wǎng)搜索引擎技術(shù)及展望[J].科技信息(學術(shù)研
究),2008.20:17-21
[13] 丁振國,陳靜,李凡.基于JSP建立電子商務網(wǎng)站的核心技術(shù)[J].
計算機應用研究,2002.7:159-161
[14] 郭曉艷,劉曉霞,朱潔娜.基于JSP的電子商務網(wǎng)站的構(gòu)建技
術(shù)[J].微機發(fā)展,2005.6:222-223