第一篇:Spring MVC使用總結(jié)
Org.springframework.ui.ModelMap傳遞數(shù)據(jù)供視圖所用
${base}取的是當(dāng)前頁(yè)面所在的路徑。它隨頁(yè)面的位置改變而改變。
web開發(fā)一共有四個(gè)作用域,范圍從高到低分為appliaction作用域(全局作用域),session作用域,request作用域和page作用域。
${base}是el表達(dá)式語(yǔ)法,它會(huì)自動(dòng)先從page作用域開始查找,如果沒(méi)有再找request作用域,然后是session,最后再是application作用域。
動(dòng)態(tài)網(wǎng)頁(yè)項(xiàng)目,頁(yè)面直接訪問(wèn)的是webcontent下的。
Weblogic.xml配置文件作用: weblogic.xml主要配置web容器的一些屬性,比較JSP編譯時(shí)間間隔、編譯路徑等 web.xml是配置整個(gè)應(yīng)用工程的屬性,如servlet等
你用tomcatjboss等web容器和weblogic一樣,它們單獨(dú)有自己的配置文件
視圖解析器
SpringMVC用于處理視圖最重要的兩個(gè)接口是ViewResolver和View
FreeMarkerViewResolver是繼承自springmvc的一個(gè)接口,只是和freemarker同名而已
XmlViewResolver
貌似工具庫(kù)里面定義好了(如ftl、分詞庫(kù)),然后在common中用
<@s.m “error.errorMessage”/>什么意思??
視頻
spring mvc
freemarker
金磊
今天問(wèn)題
VECTOR-
腳本語(yǔ)言-
注解--
為什么frame要經(jīng)過(guò)FrameAct.java一下,再返回??
@Controller是spring的Controller控制器?
為什么我新建的html是
別人是
jar包
apache下的jar包
apache-ant-zip-1.8.0.jar(ant是什么??它的jar包??ant是腳本引擎,腳本語(yǔ)言有
JavaScript)
c3p0-0.9.1.2.jar
commons-codec-1.3.jar
commons-net-2.0.jar
commons-net-ftp-2.0.jar
dwr.jar
ehcache-1.6.2.jar
ganymed-ssh2-build251beta1.jar
htmlparser-1.6.jar
httpclient-4.0.3.jar
httpcore-4.1.jar
IKAnalyzer2012_u6.jar
jcaptcha-1.0.jar
jcl-over-slf4j-1.6.1.jar
jmagick.jar
json.jar
jta-1.1.jar
jug-2.0.0.jar
log4j-over-slf4j-1.6.1.jar
logback-classic-0.9.27.jar
logback-core-0.9.27.jar
lucene-core-3.0.3.jar
mailapi-1.4.2.jar
memcachedclient-2.0.1.jar
mysql-connector-5.1.8.jar
quartz-1.6.0.jar
slf4j-api-1.6.1.jar
smtp-1.4.2.jar
spymemcached-2.3.1.jar
----
spring mvc環(huán)境搭建:
1、web.xml,啟動(dòng)Dispatcher2、創(chuàng)建servlet3、創(chuàng)建controller.java(在spring mvc中,只要加了@controller就說(shuō)明它是一個(gè)controller控制器了,非常簡(jiǎn)單)
其它注解
@RequestMapping(“/frame/config_main.do”)只要頁(yè)面上訪問(wèn)這個(gè)路徑,就會(huì)返回這
個(gè)注解下的方法的return的方法。
學(xué)習(xí)任何MVC都要掌握的步驟:
1、搭建環(huán)境(寫hello world)
2、傳值
3、截獲值
4、分發(fā)值
5、源碼
6、異常
7、上傳下載
第二篇:SpringMVC深入總結(jié)--什么SpringMVC(中關(guān)村北大青鳥網(wǎng)上學(xué)堂)
網(wǎng)址 http:///電話 010-62516562企業(yè)QQ 800001099
SpringMVC深入總結(jié)--什么是SpringMVC
大家好,Spring3 MVC是非常優(yōu)秀的MVC框架,由其是在3.0版本發(fā)布后,現(xiàn)在有越來(lái)越多的團(tuán)隊(duì)選擇了Spring3 MVC了。Spring3 MVC結(jié)構(gòu)簡(jiǎn)單,應(yīng)了那句話簡(jiǎn)單就是美,而且他強(qiáng)大不失靈活,性能也很優(yōu)秀。
官方的下載網(wǎng)址是:http:///admin/blogs/698217
Spring3 MVC的優(yōu)點(diǎn):
1、Spring3 MVC的學(xué)習(xí)難度小于Struts2,Struts2用不上的多余功能太多。呵呵,當(dāng)然這不是決定因素。
2、Spring3 MVC很容易就可以寫出性能優(yōu)秀的程序,Struts2要處處小心才可以寫出性能優(yōu)秀的程序(指MVC部分)
3、Spring3 MVC的靈活是你無(wú)法想像的,Spring的擴(kuò)展性有口皆碑,Spring3 MVC當(dāng)然也不會(huì)落后,不會(huì)因使用了MVC框架而感到有任何的限制。
Struts2的眾多優(yōu)點(diǎn):略...(呵呵,是不是不公平?)
眾多文章開篇時(shí)總要吹些牛,吸引一下讀者的眼球,把讀者的胃口調(diào)起來(lái),這樣大家才有興趣接著往后看。本文也沒(méi)能例外。不過(guò)保證你看了之后不會(huì)后悔定有收獲。
資料來(lái)源——中關(guān)村北大青鳥官網(wǎng)網(wǎng)上學(xué)堂http:///
地址 北京市海淀區(qū)中關(guān)村大街49號(hào)大華科技商廈三層c座
第三篇:基于springmvc的購(gòu)物系統(tǒng)論文20140508
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))
基于SpringMvc的購(gòu)物平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
專
業(yè):軟件工程
學(xué)
號(hào):201010414511
學(xué)
生:任 宇 桐
指導(dǎo)教師:李立
摘要:隨著信息化時(shí)代的蓬勃發(fā)展,網(wǎng)上購(gòu)物平臺(tái)作為電子商務(wù)的一種形式,正在高速的發(fā)展。當(dāng)今社會(huì)已經(jīng)越來(lái)越多的人開始接受并樂(lè)意于網(wǎng)上購(gòu)物,網(wǎng)絡(luò)購(gòu)物正適應(yīng)了當(dāng)今社會(huì)快節(jié)奏地生活,使顧客足不出戶便可以方便快捷輕松地選購(gòu)自己喜歡的商品。
本文設(shè)計(jì)并開發(fā)了一個(gè)網(wǎng)上購(gòu)物商場(chǎng),該購(gòu)物平臺(tái)以品牌為中心進(jìn)行管理,系統(tǒng)平臺(tái)可以以加盟的方式提供各品牌的網(wǎng)絡(luò)銷售渠道,并通過(guò)該系統(tǒng)對(duì)品牌、商品等的管理。文中介紹了實(shí)現(xiàn)程序的相關(guān)技術(shù)與開發(fā)工作環(huán)境,詳細(xì)闡述了整個(gè)系統(tǒng)的設(shè)計(jì)和架構(gòu)、系統(tǒng)的整理流程以及各個(gè)模塊的功能和關(guān)系。本設(shè)計(jì)使用MyEclipse開發(fā)環(huán)境結(jié)合Mysql、Tomcat,實(shí)現(xiàn)了對(duì)管理、品牌、類型、商品、訂單等的管理,最后實(shí)現(xiàn)了一個(gè)穩(wěn)定的、健壯等購(gòu)物平臺(tái)。關(guān)鍵詞:購(gòu)物;平臺(tái);品牌;商品;MyEclipse
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))
The Design and Implementation of shopping platform
based on SpringMvc
Specialty: Software Engineering
Student Number: 201010414511
Student: Ren Yutong
Supervisor: Li li
Abstract: With the rapid development of the information age, online shopping as a form of e-commerce platform, is a high-speed development.Today's society more and more people begin to accept and be happy online shopping.Online shopping is adapted to the fast pace of life in today's society, so that customers can enjoy the convenience quickly and easily buy their favorite products.This paper article is designed and developed an online shopping mall.The shopping platform to brand-centric management system platform can provide a way to join the brand's network of sales channels, and through the system management of the brand, produc and so on.This paper describes the realization of the program of technical and development work environment, elaborated on the relationship between functionality and overall system design and architecture, finishing systems and processes of each module.This design uses MyEclipse as a development environment, combined with the Mysql database, Tomcat server to achieve the management of brand, type, commodity, orders and so on.Finally achieve a stable, robust and other shopping platforms.Key words: Shopping;Platform;Brand;MyEclipse
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))目 錄
緒 論...........................................................................2 1 需求分析......................................................................4 1.1 功能需求分析..............................................................4 1.1.1 商品瀏覽..............................................................4 1.1.2 商品購(gòu)買..............................................................4 1.1.3 登錄注冊(cè)..............................................................4 1.1.4 個(gè)人中心..............................................................5 1.1.5 后臺(tái)管理..............................................................5 1.2 可行性分析................................................................5 1.2.1 經(jīng)濟(jì)可行性............................................................5 1.2.2 技術(shù)可行性............................................................5 1.2.3 操作可行性分析........................................................6 1.2.4法律可行性............................................................6 2 相關(guān)技術(shù)介紹..................................................................7 2.1 JAVA語(yǔ)言介紹..............................................................7 2.2 SPRING介紹................................................................7 2.3 SPRINGMVC介紹..............................................................7 2.4 HIBERNATE介紹..............................................................7 2.5 JAVASCRIPT介紹.............................................................8 2.6 JQUERY介紹................................................................8 2.7 FREEMARKER介紹.............................................................9 2.8 開發(fā)平臺(tái)與工具介紹........................................................9 2.8.1 MyEclipse工具介紹....................................................9 2.8.2 Mysql數(shù)據(jù)庫(kù)介紹......................................................9 2.8.3 服務(wù)器Tomcat介紹.....................................................9 3 數(shù)據(jù)庫(kù)分析與設(shè)計(jì).............................................................10 3.1 數(shù)據(jù)庫(kù)設(shè)計(jì)原則...........................................................10 3.2 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)...........................................................10 3.3 ER關(guān)系圖................................................................14 4 系統(tǒng)概要設(shè)計(jì).................................................................15 4.1 系統(tǒng)功能模塊結(jié)構(gòu)圖分析...................................................15
I
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))4.2 系統(tǒng)功能流程圖...........................................................16 5.1 公共模塊設(shè)計(jì)與實(shí)現(xiàn).......................................................17 5.1.1 程序目錄結(jié)構(gòu).........................................................17 5.1.2 系統(tǒng)整體架構(gòu).........................................................17 5.1.3 baseDao介紹.........................................................18 5.1.4 分頁(yè)bean介紹........................................................19 5.2系統(tǒng)模塊實(shí)現(xiàn).............................................................19 5.2.1 商品展示和購(gòu)買模塊...................................................20 5.2.2 個(gè)人中心模塊.........................................................24 5.2.3 注冊(cè)登錄模塊.........................................................24 5.2.4 系統(tǒng)管理員后臺(tái)管理模塊...............................................26 5.2.5 品牌管理員管理內(nèi)容模塊...............................................29 6 重難點(diǎn)分析及解決方案.........................................................32 6.1 HIBERNATETEMPLATE的應(yīng)用....................................................32 6.2 FREEMARKER的應(yīng)用..........................................................33 6.3 樹形結(jié)構(gòu)插件JQUERY ZTREE..................................................35 6.4 文件上傳插件UPLOADFLY.....................................................37 6.5 AJAX分頁(yè).................................................................37 7 系統(tǒng)測(cè)試.....................................................................39 7.1 功能測(cè)試.................................................................39 7.2 性能測(cè)試.................................................................39 8 系統(tǒng)部署.....................................................................40 結(jié) 論..........................................................................41 參考文獻(xiàn).......................................................................42 致 謝..........................................................................43
II
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))緒 論
研究的目的
隨著社會(huì)以及信息技術(shù)的發(fā)展,如今的互聯(lián)網(wǎng)已經(jīng)深入到人們生活的方方面面,網(wǎng)上購(gòu)物也成為一種年輕人甚至是老人和小孩的一種購(gòu)物方式,運(yùn)營(yíng)商以及店家的努力,網(wǎng)上購(gòu)物已經(jīng)變得簡(jiǎn)單、方便、快捷,越來(lái)越多的人喜歡上這樣一種購(gòu)物方式。在國(guó)內(nèi)淘寶、天貓、京東這幾大網(wǎng)上商城合力促進(jìn)了網(wǎng)上購(gòu)物在中國(guó)的發(fā)展。
關(guān)于本課題的購(gòu)物平臺(tái)的設(shè)計(jì)是為了能夠跟上廣大人民網(wǎng)購(gòu)的一個(gè)需求,系統(tǒng)會(huì)盡量設(shè)計(jì)得小巧,作為一個(gè)平臺(tái)去適應(yīng)不同內(nèi)型的商品,在一定程度上增加購(gòu)購(gòu)物平臺(tái)的商品信息處理量,細(xì)化分類,這樣來(lái)給用戶提供準(zhǔn)確的商品信息,便于用戶的查詢等。該購(gòu)物平臺(tái)也擁有一些普遍的功能包括商品管理、訂單管理等等,同時(shí)所有人都能夠?yàn)g覽所有商品,當(dāng)需要購(gòu)買商品的時(shí)候則需要登錄。同時(shí)該系統(tǒng)站在一個(gè)平臺(tái)的角度,以品牌為核心進(jìn)行管理,通過(guò)系統(tǒng)以品牌加盟的形式產(chǎn)生管理員,一個(gè)品牌對(duì)應(yīng)于一個(gè)管理賬戶,系統(tǒng)通過(guò)系統(tǒng)管理員對(duì)品牌管理員進(jìn)行管理,這樣該系統(tǒng)就同時(shí)站在商家以及消費(fèi)者雙方,為雙方提供服務(wù)。
研究的意思
總體而言該設(shè)計(jì)將實(shí)現(xiàn)一個(gè)小巧靈活的購(gòu)物平臺(tái),該平臺(tái)能夠讓用戶通過(guò)更加簡(jiǎn)潔的方式了解到具體的商品,從而實(shí)現(xiàn)一個(gè)能夠適應(yīng)大眾化的購(gòu)物平臺(tái),提高網(wǎng)站與用戶的交互,做到更加的人性化。
國(guó)內(nèi)現(xiàn)狀
在我國(guó),網(wǎng)上購(gòu)物的理念后起與國(guó)外,但是發(fā)展速度也是驚人的,網(wǎng)上購(gòu)物系統(tǒng)已經(jīng)得到了很大的發(fā)展,在淘寶、天貓以及一些有名的團(tuán)購(gòu)網(wǎng)以及返利網(wǎng)的帶動(dòng)下,整個(gè)行業(yè)已經(jīng)成熟。各種系統(tǒng)都在以客戶為中心,給客戶提供好的服務(wù),在系統(tǒng)功能上也是取得了非常大的進(jìn)度,這兩天淘寶退出的雙十一活動(dòng)中,能夠單日創(chuàng)下300億的交易額,這體現(xiàn)了國(guó)內(nèi)的主要的大商場(chǎng)有能力處理高并發(fā)等特殊情況,國(guó)內(nèi)現(xiàn)有系統(tǒng)是非常健壯、穩(wěn)定、可靠的。
隨著人民生活水平的改善以及信息技術(shù)、電子商務(wù)等的快速發(fā)展,目前而言絕大多數(shù)的商家都已經(jīng)在網(wǎng)上建起了在線商店或者在淘寶、天貓、東京商城上面上架,向消費(fèi)者展示出一種新穎的購(gòu)物理念,并且絕大多數(shù)人已經(jīng)結(jié)束并且喜歡這樣一種購(gòu)物方式。
國(guó)外現(xiàn)狀
在美、日等信息化程度較高的國(guó)家和地區(qū),網(wǎng)絡(luò)商店發(fā)展速度迅猛,美國(guó)的世界級(jí)超一流的零售商,如沃爾瑪、凱瑪特、家庭倉(cāng)儲(chǔ)、科羅格、J.C培尼等紛紛躋身于網(wǎng)絡(luò)經(jīng)商的行列。調(diào)查表明:美國(guó)的家庭己越來(lái)越習(xí)慣于在家中從網(wǎng)上購(gòu)物。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))發(fā)展趨勢(shì)
網(wǎng)上購(gòu)物是信息時(shí)代的產(chǎn)物,會(huì)隨著信息時(shí)代的發(fā)展繼續(xù)發(fā)展,也會(huì)有越來(lái)越的的人選擇和喜歡這種購(gòu)物方式,在未來(lái)很有可能網(wǎng)上購(gòu)物成為人們購(gòu)物的首要方式,購(gòu)物系統(tǒng)也會(huì)越發(fā)的完善和人性化。隨著社會(huì)的發(fā)展對(duì)于平臺(tái)以及雙贏等思想也逐漸運(yùn)用于該領(lǐng)域,比如一些返利網(wǎng)、折扣網(wǎng)、團(tuán)購(gòu)網(wǎng)等等已經(jīng)在體現(xiàn)這方面的思想了,商家在追求銷量的情況下開始向消費(fèi)者讓利。在未來(lái)這種營(yíng)銷的方式應(yīng)該會(huì)在電商中不斷的發(fā)展下去,逐漸提高消費(fèi)者的受益的比例。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))1 需求分析
在本章中將詳細(xì)介紹整個(gè)系統(tǒng)的需求,并且對(duì)系統(tǒng)的可行性作出分析,從而讓讀者了解本系統(tǒng)具體實(shí)現(xiàn)的功能以及在設(shè)計(jì)和實(shí)現(xiàn)上是否可行等。
1.1 功能需求分析
該系統(tǒng)為一個(gè)購(gòu)物平臺(tái),擁有普通購(gòu)物網(wǎng)站的大多數(shù)基本功能,如:商品的瀏覽、商品加入購(gòu)物車、下訂單、用戶登錄、管理個(gè)人中心以及管理員在后臺(tái)對(duì)品牌、商品、商品的類型的管理功能等,本節(jié)會(huì)盡量按照軟件工程[1]的思想來(lái)分析本系統(tǒng)。
1.1.1 商品瀏覽
所用的人都能夠?yàn)g覽本網(wǎng)站上的所有商品,商品按照品牌、商品類型、精品商品、特價(jià)商品、熱銷商品、單個(gè)商品等的方式將系統(tǒng)中的商品展示給消費(fèi)者,并提供搜索功能,按照商品的名稱等進(jìn)行搜索。
1.1.2 商品購(gòu)買
當(dāng)消費(fèi)者選擇好商品以后,可以將商品加入到自己的購(gòu)物車中,然后在購(gòu)物車中進(jìn)行交易支付,也可以在選擇好商品的同時(shí)下訂單,進(jìn)行支付交易,當(dāng)然所有的操作都是需要用戶登錄的。
1.1.3 登錄注冊(cè)
對(duì)于系統(tǒng)登錄注冊(cè)是針對(duì)于系統(tǒng)的角色而言的,本系統(tǒng)整體上分為三類角色。其一系統(tǒng)管理員,擁有對(duì)系統(tǒng)的簡(jiǎn)單的管理和管理員管理的功能,系統(tǒng)管理員有系統(tǒng)內(nèi)置生成。其二是品牌管理員,一個(gè)品牌管理?yè)碛幸粋€(gè)品牌管理員賬號(hào),通過(guò)該賬號(hào)管理該品牌下的所有的資源和信息,包括對(duì)自己信息的管理和品牌信息的管理以及品牌下商品類型的管理、商品信息、訂單信息等的管理。其二是系統(tǒng)會(huì)員,也就是要通過(guò)該網(wǎng)站購(gòu)物的會(huì)員,會(huì)員登錄過(guò)后對(duì)個(gè)人中心進(jìn)行管理,包括自身信息、登錄密碼、支付密碼、購(gòu)物車、訂單等的管理。
對(duì)于注冊(cè)則主要針對(duì)于品牌管理員和會(huì)員的注冊(cè),品牌管理員注冊(cè)需要連同品牌信息一同注冊(cè),注冊(cè)成功過(guò)后等待系統(tǒng)管理員的審核,審核通過(guò)過(guò)后就可以對(duì)自己品牌的各項(xiàng)信息進(jìn)行管理。對(duì)于會(huì)員的注冊(cè)需要用戶名、密碼、郵箱地址等,對(duì)于會(huì)員的注冊(cè)則不需要系統(tǒng)管理員的審核。注冊(cè)成功過(guò)后登錄系統(tǒng)進(jìn)入到個(gè)人中心能夠完善自己的各項(xiàng)信息和其它的一些信息的管理。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))1.1.4 個(gè)人中心
會(huì)員購(gòu)買商品時(shí)需要登錄才能夠購(gòu)買商品,會(huì)員登錄過(guò)后能夠進(jìn)入到個(gè)人中心,在個(gè)人中心中會(huì)員能夠管理自己的基本信息,包括:用戶名、郵箱地址、電話號(hào)碼、收貨地址等,同時(shí)能夠管理自己的登錄密碼和支付密碼,當(dāng)購(gòu)買商品的時(shí)候還能對(duì)自己的購(gòu)物車和自己的購(gòu)買記錄進(jìn)行查看和操作。
1.1.5 后臺(tái)管理
系統(tǒng)管理員和品牌管理員都可以進(jìn)入到系統(tǒng)后臺(tái),根據(jù)不同的角色管理不同的項(xiàng)。系統(tǒng)管理員擁有最高權(quán)限,但是并不是管理所有的內(nèi)容,在本系統(tǒng)系統(tǒng)管理員最主要的功能則是對(duì)品牌管理員的管理,每一個(gè)注冊(cè)的品牌管理員都需要通過(guò)系統(tǒng)管理員的審核才能夠使用。品牌管理員相對(duì)系統(tǒng)管理員而言管理的內(nèi)容要相對(duì)多許多,但是也都是管理本品牌的內(nèi)容。品牌管理員的管理內(nèi)容包括自己基本信息的管理、品牌信息的管理、類型的管理、商品的管理、訂單的管理等。
1.2 可行性分析
在系統(tǒng)的設(shè)計(jì)和開發(fā)之前都會(huì)對(duì)系統(tǒng)有一個(gè)大體的認(rèn)識(shí)并且通過(guò)總共分析來(lái)確定系統(tǒng)是否值得開發(fā)、系統(tǒng)是否能夠很好的開發(fā)出來(lái)以及開發(fā)出來(lái)過(guò)后的實(shí)際效益等等。本節(jié)將通過(guò)經(jīng)濟(jì)可行性、操作可行性、技術(shù)可行性等方面對(duì)系統(tǒng)的可行性進(jìn)行詳細(xì)的分析。
1.2.1 經(jīng)濟(jì)可行性
設(shè)計(jì)和開發(fā)購(gòu)物系統(tǒng)的硬件和軟件以及服務(wù)器要求都不高,擁有一臺(tái)普通的個(gè)人電腦或者PC機(jī)均可。要通過(guò)Java設(shè)計(jì)開發(fā)這套系統(tǒng)需要在個(gè)人電腦上配置Java的運(yùn)行環(huán)境Jdk和Jre,同時(shí)配置服務(wù)器Tomcat、開發(fā)工具M(jìn)yEclipse、數(shù)據(jù)庫(kù)Mysql,這些都是免費(fèi)的,所以在這個(gè)電腦普及率非常高的情況下,這套系統(tǒng)的開發(fā)經(jīng)費(fèi)幾乎為0,所以在經(jīng)濟(jì)方面是可行的。
1.2.2 技術(shù)可行性
本系統(tǒng)的開發(fā)采用Spring和Hibernate作為核心,這兩門技術(shù)是JavaEE最熱門也是使用最廣泛的兩種框架,在網(wǎng)絡(luò)上擁有大量的資料、資源,相對(duì)應(yīng)的社區(qū)也是非常的活躍。另外這也是自己所熟悉的框架,平時(shí)自己在學(xué)習(xí)和工作中有大量的使用,所以在網(wǎng)站的后臺(tái)開發(fā)方面問(wèn)題不大。對(duì)于網(wǎng)站的前端而言,自己對(duì)于Javascript、Jquery、Css、Css3.0也有不少的了解,特別是對(duì)于Javascript和Jquery是很熟悉的,有足夠的能力來(lái)處理好網(wǎng)站的布局、網(wǎng)站效果的實(shí)現(xiàn)、網(wǎng)站特效、數(shù)據(jù)請(qǐng)求處理等。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))另一發(fā)面該系統(tǒng)整體的業(yè)務(wù)邏輯與一般的購(gòu)物系統(tǒng)的業(yè)務(wù)邏輯相似,業(yè)務(wù)邏輯處理起來(lái)也不復(fù)雜,所以在配合Hibernate對(duì)數(shù)據(jù)的操作上對(duì)于SQL的要求就更加的低了,所以在這方面也是可行的。
綜上所述,在技術(shù)方面也是可行的。1.2.3 操作可行性分析
整個(gè)系統(tǒng)的業(yè)務(wù)邏輯類似于大多數(shù)的購(gòu)物商場(chǎng),符合人們平時(shí)購(gòu)物的習(xí)慣和操作習(xí)慣。整體業(yè)務(wù)邏輯上以品牌為核心展開,品牌下面包含類型,類型下面包含商品,整體流程非常清晰。另一方面,系統(tǒng)整體的風(fēng)格為簡(jiǎn)潔風(fēng)格,用戶的注冊(cè)、以及其它信息的添加和修改都非常的簡(jiǎn)潔已操作。綜上所述,本系統(tǒng)操作上是可行的。
1.2.4法律可行性
該系統(tǒng)不觸及任何的法律法規(guī)問(wèn)題,為大眾提供服務(wù),不損壞任何的的利益,所以在法律上是可行的。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))2 相關(guān)技術(shù)介紹
2.1 Java語(yǔ)言介紹
Java是Sun公司推出的一種編程語(yǔ)言。它是一種通過(guò)解釋方式來(lái)執(zhí)行的語(yǔ)言,語(yǔ)法規(guī)則和C++類似。同時(shí),Java也是一種跨平臺(tái)的程序設(shè)計(jì)語(yǔ)言。用Java語(yǔ)言編寫的程序叫做“Applet”(小應(yīng)用程序),用編譯器將它編譯成類文件后,將它存在WWW頁(yè)面中,并在HTML檔上作好相應(yīng)標(biāo)記,用戶端只要裝上Java的客戶軟件就可以在網(wǎng)上直接運(yùn)行“Applet”。Java非常適合于企業(yè)網(wǎng)絡(luò)和Internet環(huán)境,現(xiàn)在已成為Internet中最受歡迎、最有影響的編程語(yǔ)言之一。Java有許多值得稱道的優(yōu)點(diǎn),如簡(jiǎn)單、面向?qū)ο?、分布式、解釋性、可靠、安全、結(jié)構(gòu)中立性、可移植性、高性能、多線程、動(dòng)態(tài)性等。Java擯棄了C++中各種弊大于利的功能和許多很少用到的功能。Java可以運(yùn)行于任何微處理器,用Java開發(fā)的程序可以在網(wǎng)絡(luò)上傳輸,并運(yùn)行于任何客戶機(jī)上。
2.2 Spring介紹
Spring是一個(gè)開源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。
2.3 Springmvc介紹
Spring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow[2]里面。Spring 框架提供了構(gòu)建 Web 應(yīng)用程序的全功能 MVC 模塊。使用 Spring 可插入的 MVC 架構(gòu),可以選擇是使用內(nèi)置的 Spring Web 框架還可以是 Struts 這樣的 Web 框架。通過(guò)策略接口,Spring 框架是高度可配置的,而且包含多種視圖技術(shù),例如 JavaServer Pages(JSP)技術(shù)、Velocity、Tiles、iText 和POI。Spring MVC 框架并不知道使用的視圖,所以不會(huì)強(qiáng)迫您只使用 JSP 技術(shù)。Spring MVC 分離了控制器、模型對(duì)象、分派器以及處理程序?qū)ο蟮慕巧?,這種分離讓它們更容易進(jìn)行定制。
2.4 Hibernate介紹
Hibernate是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB[3]
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。
2.5 Javascript介紹
JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語(yǔ)言。同時(shí)也是一種廣泛用于客戶端Web開發(fā)的腳本語(yǔ)言,常用來(lái)給HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言的子集)網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。它最初由網(wǎng)景公司(Netscape)的Brendan Eich設(shè)計(jì),是一種動(dòng)態(tài)、弱類型、基于原型的語(yǔ)言,內(nèi)置支持類。JavaScript是Sun公司(已被oracle收購(gòu))的注冊(cè)商標(biāo)。Ecma國(guó)際以JavaScript為基礎(chǔ)制定了ECMAScript標(biāo)準(zhǔn)。JavaScript也可以用于其他場(chǎng)合,如服務(wù)器端編程。完整的JavaScript實(shí)現(xiàn)包含三個(gè)部分:ECMAScript,文檔對(duì)象模型,字節(jié)順序記號(hào)。
Netscape公司在最初將其腳本語(yǔ)言命名為L(zhǎng)iveScript。在Netscape在與Sun合作之后將其改名為JavaScript。JavaScript最初受Java啟發(fā)而開始設(shè)計(jì)的,目的之一就是“看上去像Java”[2],因此語(yǔ)法上有類似之處,一些名稱和命名規(guī)范也借自Java。但JavaScript的主要設(shè)計(jì)原則源自Self和Scheme[4]。JavaScript與Java名稱上的近似,是當(dāng)時(shí)網(wǎng)景為了營(yíng)銷[4]考慮與Sun公司達(dá)成協(xié)議的結(jié)果。為了取得技術(shù)優(yōu)勢(shì),微軟推出了JScript腳本語(yǔ)言。Ecma國(guó)際(前身為歐洲計(jì)算機(jī)制造商協(xié)會(huì))創(chuàng)建了ECMA-262標(biāo)準(zhǔn)(ECMAScript)。現(xiàn)兩者都屬于ECMAScript的實(shí)現(xiàn)。盡管JavaScript作為給非程序人員的腳本語(yǔ)言,而非是作為給程序人員的編程語(yǔ)言來(lái)推廣和宣傳,但是JavaScript具有非常豐富的特性。
ECMAScript-262是JavaScript標(biāo)準(zhǔn),基于網(wǎng)景(Netscape)公司提出JavaScript語(yǔ)言和微軟公司提出的JScript語(yǔ)言
ECMA開始于1996年,在1997年7月,采納了首個(gè)版本,1998年,該標(biāo)準(zhǔn)成為了國(guó)際ISO標(biāo)準(zhǔn)
2.6 Jquery介紹
Jquery是繼prototype之后又一個(gè)優(yōu)秀的Javascript框架。它是輕量級(jí)的js庫(kù),它兼容CSS3,還兼容各種瀏覽器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+),jQuery2.0及后續(xù)版本將不再支持IE6/7/8瀏覽器。jQuery使用戶能更方便地處理HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用)、events、實(shí)現(xiàn)動(dòng)畫效果,并且方便地為網(wǎng)站提供AJAX交互[5]。jQuery還有一個(gè)比較大的優(yōu)勢(shì)是,它的文檔說(shuō)明很全,而且各種應(yīng)用也說(shuō)得很詳細(xì),同時(shí)還有許多成熟的插件可供選擇。jQuery能夠使用戶的html頁(yè)面保持代碼和html內(nèi)容分離,也就是說(shuō),不用再在html里面插入一堆js來(lái)調(diào)用命令了,只需定義id
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))即可。
2.7 FreeMarker介紹
FreeMarker允許Java servlet保持圖形設(shè)計(jì)同應(yīng)用程序邏輯的分離,這是通過(guò)在模板中密封HTML完成的。模板用servlet提供的數(shù)據(jù)動(dòng)態(tài)地生成 HTML。模板語(yǔ)言是強(qiáng)大的直觀的,編譯器速度快,輸出接近靜態(tài)HTML頁(yè)面的速度。雖然FreeMarker具有一些編程的能力,但通常由Java程序準(zhǔn)備要顯示的數(shù)據(jù),由FreeMarker生成頁(yè)面,通過(guò)模板顯示準(zhǔn)備的數(shù)據(jù)。
FreeMarker與容器無(wú)關(guān),因?yàn)樗⒉恢繦TTP或Servlet;FreeMarker同樣可以應(yīng)用于非Web應(yīng)用程序環(huán)境,F(xiàn)reeMarker更適合作為Model2框架(如Struts)的視圖組件,可以在模板中使用JSP標(biāo)記庫(kù),F(xiàn)reeMarker是免費(fèi)的。
2.8 開發(fā)平臺(tái)與工具介紹 2.8.1 MyEclipse工具介紹
MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench,簡(jiǎn)稱MyEclipse)是對(duì)EclipseIDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能。
2.8.2 Mysql數(shù)據(jù)庫(kù)介紹
Mysql是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在WEB應(yīng)用方面Mysql是最好的RDBMS(Relational Database Management System:關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))應(yīng)用軟件之一。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。MySQL所使用的SQL語(yǔ)言是用于訪問(wèn)數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語(yǔ)言。MySQL軟件采用了雙授權(quán)政策,它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),一般中小型網(wǎng)站的開發(fā)都選擇MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。
2.8.3 服務(wù)器Tomcat介紹
Tomcat是Apache 軟件基金會(huì)(Apache Software Foundation)的Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun和其他一些公司及個(gè)人共同開發(fā)而成。因?yàn)門omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。目前最新版本是8.0。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))3 數(shù)據(jù)庫(kù)分析與設(shè)計(jì)
本節(jié)將從數(shù)據(jù)庫(kù)以及數(shù)據(jù)表的設(shè)計(jì)和實(shí)現(xiàn)方面詳細(xì)的介紹整個(gè)系統(tǒng)的數(shù)據(jù)庫(kù)的設(shè)計(jì)和實(shí)現(xiàn),并對(duì)整個(gè)系統(tǒng)的業(yè)務(wù)邏輯做初步的介紹,在數(shù)據(jù)庫(kù)設(shè)計(jì)方面會(huì)盡量的多參與一些在購(gòu)物平臺(tái)[7]方面非常優(yōu)秀的實(shí)習(xí)。
3.1 數(shù)據(jù)庫(kù)設(shè)計(jì)原則
(1)盡可能的減少數(shù)據(jù)冗余和重復(fù)
合理的數(shù)據(jù)庫(kù)表的設(shè)計(jì)應(yīng)該是在滿足需求的前提下,使數(shù)據(jù)的重復(fù)量最小,應(yīng)盡量按照關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)理論方法去設(shè)計(jì)一個(gè)數(shù)據(jù)庫(kù),減少數(shù)據(jù)的冗余。
(2)結(jié)構(gòu)設(shè)計(jì)與操作設(shè)計(jì)相結(jié)合
在設(shè)計(jì)數(shù)據(jù)庫(kù)結(jié)構(gòu)時(shí),有時(shí)為了編程實(shí)現(xiàn)的簡(jiǎn)捷和思路的清晰,往往故意增加一些冗余數(shù)據(jù)??紤]到選擇的機(jī)器型號(hào)和檔次等因素,如果增加的冗余數(shù)據(jù)不會(huì)明顯增加存儲(chǔ)空間和降低處理效率,并且對(duì)編程實(shí)現(xiàn)有很大幫助,往往可以采用這類方法[15]。
(3)數(shù)據(jù)結(jié)構(gòu)具有相對(duì)穩(wěn)定性
數(shù)據(jù)結(jié)構(gòu)的相對(duì)穩(wěn)定性,可以作為新、舊信息系統(tǒng)的轉(zhuǎn)換依據(jù)。3.2 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)
表3-1 管理員表(admin)
字段名 id name passWord header role isEnable 類型 Integer Varchar Varchar Varchar Int Int
是否是主外鍵 是 否 否
否
否
否
索引
是 是 否 否 否 否
是否為空 Not-null Not-null Not-null
Not-null Not-null
字段描述 主鍵ID 登錄賬號(hào) 登錄密碼 管理員頭像 系統(tǒng)角色 是否可用
參照表 — — — — — —
表 3-1 管理員表(admin)管理員表,該表用于存放管理員信息,其中id為主鍵,不能為空并且自動(dòng)增長(zhǎng)作為索引,另外管理員登錄密碼經(jīng)過(guò)MD5加密,保證用戶信息的安全性,header為用戶的頭像的路徑。Role為系統(tǒng)角色,本系統(tǒng)的后臺(tái)管理有兩種角色超級(jí)管理員和普通管理員,role為0表示超級(jí)管理員,role為其它值則表示品牌管理員,role對(duì)于存放的是品牌的ID。isEnable由于表示用戶是否可用,注冊(cè)的品牌管理員是不可用,需要經(jīng)過(guò)超級(jí)管理員的審核,通過(guò)該字段超級(jí)管理員能夠?qū)ζ放乒芾韱T實(shí)現(xiàn)假刪除,是品牌管理員不可用。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))表3-2 會(huì)員表(member)
字段名 Id name passWord payPassWord email address phone createDate alertDate loadDate 類型 Integer Varchar Varchar Varchar Varchar Varchar Varchar DateTime DateTime Datetime
是否是主外鍵
是 否 否 否 否 否 否 否 否 否
索引
是 否 否 否 否 否 否 否 否 否
是否為空 Not-null Not-null Not-null Not-null Not-null
Not-null Not-null Not-null
字段描述 主鍵ID 用戶名 登錄密碼
支付密碼 郵箱地址 收貨地址 電話號(hào)碼 創(chuàng)建時(shí)間 修改時(shí)間 登錄時(shí)間
參照表 — — — — — —
— — —
表 3-2 會(huì)員表(member)用于存放會(huì)員的基本信息,如:用戶名、密碼(同樣經(jīng)過(guò)md5加密)、郵箱地址等,其中id為主鍵,不能為空并且自動(dòng)增長(zhǎng)作為索引。另外本表中存放的電話號(hào)碼、用戶名、收貨地址是作為會(huì)員在購(gòu)物的基本信息,但購(gòu)物是用戶可以修改,最后具體的聯(lián)系方式、收貨地址這些與這些數(shù)據(jù)沒(méi)有直接的關(guān)系。
表3-3 商品類型表(goodsType)
字段名 Id Name ParentId level trademarkId isEnable 類型 Integer Varchar Integer Int Integer Int
是否是主外鍵
是 否 否 否 否 否
索引
是 否 否 否 否 否
是否為空 Not-null Not-null Not-null Not-null Not-null Not-null
字段描述 主鍵ID 類型名稱 父類型id 分類等級(jí) 品牌id 是否可用
參照表 — — — — — —
表 3-3 商品類型表(goodsType),用于存放商品的類型信息,其中id為主鍵,不能為空自動(dòng)增長(zhǎng),name用于存放類型的名稱。該表的設(shè)計(jì)是按照二叉樹數(shù)據(jù)結(jié)構(gòu)來(lái)設(shè)計(jì)的一個(gè)無(wú)限分類的表結(jié)構(gòu),parentId用于記錄當(dāng)前類型的父類型的ID值,level則表示分類的等級(jí)。trademarkId外鍵關(guān)聯(lián)品牌表,用于記錄當(dāng)前的商品類似是屬于哪一個(gè)品牌的,便于以品牌為核心進(jìn)行管理。
表3-4 品牌信息表(trademark)
字段名 Id Name Remarks icon flag isEnable 類型 Integer Varchar Varchar Varchar Int Int
是否是主外鍵
是 否 否 否 否 否
索引
是 是 否 否 否 否
是否為空 Not-null Not-null
Not-null Not-null
字段描述 主鍵ID 品牌名稱 品牌簡(jiǎn)介 品牌圖表 品牌類型 是否可用
參照表 — — — — — —
表3-4品牌信息表(trademark),用于存放品牌的基本信息,其中id為主鍵,不能
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))為空自動(dòng)增長(zhǎng),其它的字段存儲(chǔ)品牌的名稱、簡(jiǎn)介、圖標(biāo)、類型等。其中flag為品牌的類型,這些類型為系統(tǒng)內(nèi)置的類型,所有的品牌的類型都必須從這些類型中選取,品牌的類型主要有一下幾類:日用百貨、服飾、電器/家電、數(shù)碼、家具建材、汽車/配件、飾品這七大類,基本上這七大類也能夠很好的包含絕大多數(shù)品牌和商品。最后isEnable同樣是用于處理假刪除的,因?yàn)橛兄?gòu)物車和訂單的信息不方便直接刪除,所以與之有關(guān)的數(shù)據(jù)都是采用的假刪除的方式來(lái)處理的。
表3-5 商品信息表(goodsInfo)
字段名 Id name remarks goodsTypeId trademarkId unit imageUrl marketPrice memberPrice isrefinement isHost isDiscount createDate alertDate isEnable adminId 類型 Integer Varchar Varchar Integer Integer Varchar Varchar Float Float Boolean Boolean Boolean DateTime DateTime Int Integer
是否是主外鍵
是 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否
索引
是 是 否 否 否 否 否 否 否 否 否 否 否 否 否 否
是否為空 Not-null Not-null
Not-null Not-null
Not-null Not-null Not-null Not-null
字段描述 主鍵ID 商品名稱 商品介紹 商品類型id 品牌id 計(jì)數(shù)單位 商品圖片 市場(chǎng)價(jià)格 會(huì)員價(jià)格 是否精品 是否熱賣 是否特價(jià) 創(chuàng)建時(shí)間 修改時(shí)間 是否可用 創(chuàng)建者
參照表 — — — — — — — — — — — — — — — —
表3-5商品信息表(goodsInfo),用于存放商品的基本信息,保存商品的名稱、簡(jiǎn)介、圖片路徑、銷售價(jià)格等等。其中id為主鍵,不能為空自動(dòng)增長(zhǎng),其次在本表中有著兩個(gè)字段分別是goodsTypeId和trademarkId,這兩改字段分別用于外鍵關(guān)聯(lián)商品的類型和商品的品牌,對(duì)于商品外鍵關(guān)聯(lián)了商品類型過(guò)后也是可以知道商品所屬的品牌的,但是為了便于查詢和操作,本表結(jié)構(gòu)同樣關(guān)聯(lián)了商品的品牌。adminId用于管理品牌管理員,注明該商品信息的創(chuàng)建者。最后isEnable同樣是用于處理假刪除的。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))表3-6 購(gòu)物車信息表(shopCart)
字段名 Id goodsInfoId memberId amount price createDate isEnable 類型 Integer Integer Integer Int Float DateTime Int 是否是主外鍵
是 否 否 否 否 否 否 索引
是 否 否 否 否 否 否 是否為空 Not-null Not-null Not-null Not-null Not-null Not-null Not-null 字段描述 主鍵ID 商品Id 會(huì)員Id 購(gòu)買數(shù)量 購(gòu)買單價(jià) 創(chuàng)建時(shí)間 是否可用 參照表 — — — — — — —
表 3-6購(gòu)物車信息表(shopCart),該表用于存放用戶購(gòu)物車的基本信息,包括商品信息ID、會(huì)員ID、購(gòu)買數(shù)量、購(gòu)買單價(jià)、創(chuàng)建時(shí)間等等。其中id為主鍵,不能為空并且自動(dòng)增長(zhǎng)。goodsInfoId用于關(guān)聯(lián)商品信息表,表示加入購(gòu)物車的商品,memberId外鍵關(guān)聯(lián)會(huì)員表,用于區(qū)分是哪一個(gè)會(huì)員添加的購(gòu)物車信息。amount為購(gòu)買數(shù)量,price為購(gòu)買單價(jià),最后isEnable同樣是用于處理假刪除的。
表3-7 訂單信息表(orderInfo)
字段名 Id OrderID goodsInfoId memberId Amount Price totalPrice receiverName receiverPhone receiverAddress status createDate alertDate isEnable 類型 Integer Varchar Integer Integer Int Float Float Varchar Varchar Varchar Int DateTime DateTime Int 是否是主外鍵
是 否 否 否 否 否 否 否 否 否 否 否 否 否 索引
是 否
否 否 否 否 否 否 否 否 否 否 否 否 是否為空 Not-null Not-null Not-null Not-null Not-null Not-null Not-null Not-null Not-null Not-null Not-null Not-null Not-null Not-null 字段描述 主鍵ID 訂單號(hào) 商品ID 會(huì)員Id 購(gòu)買數(shù)量 購(gòu)買單價(jià) 購(gòu)買總價(jià) 收貨人姓名 收貨人電話 收貨地址 狀態(tài) 創(chuàng)建時(shí)間 修改時(shí)間 是否可用 參照表 — — — — — — — — — — — — — —
表 3-7訂單信息表(orderInfo),該表用于存放訂單的相關(guān)的信息,包括訂單號(hào)、商品ID、會(huì)員ID、購(gòu)買數(shù)量、購(gòu)買單價(jià)、購(gòu)買總價(jià)、收貨人相關(guān)信息、購(gòu)物狀態(tài)等等。其中id為主鍵,不能為空并且自動(dòng)增長(zhǎng)。goodsInfoId用于關(guān)聯(lián)商品信息表,表示加入購(gòu)物車的商品,memberId外鍵關(guān)聯(lián)會(huì)員表,用于區(qū)分是哪一個(gè)會(huì)員添加的購(gòu)物車信息。amount為購(gòu)買數(shù)量,price為購(gòu)買單價(jià)。receiverName、receiverPhone、receiverAddress分別存放著收貨人姓名、收貨人聯(lián)系方式、收貨地址。Status表示購(gòu)物狀態(tài),最要分為三種狀態(tài),分別為: 確認(rèn)支付、已經(jīng)發(fā)貨、確認(rèn)收貨,最后isEnable同樣是用于處理假
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))刪除的。
3.3 ER關(guān)系圖
圖3-1 ER關(guān)系圖
圖3-1ER關(guān)系圖為本系統(tǒng)ER模型圖,該圖清晰地反映了各個(gè)主表之間對(duì)應(yīng)關(guān)系,以及各張表的表結(jié)構(gòu),對(duì)設(shè)計(jì)系統(tǒng)有很大的幫助。其中member表與表orderInfo和表shopCart為一對(duì)多的對(duì)應(yīng)關(guān)系,表shopCart與表member、表goodsInfo為多對(duì)一的關(guān)系,表orderInfo與表member、表goodsInfo為多對(duì)一的關(guān)系,表goodsInfo與表goodsType、表admin、表trademark是多對(duì)一的關(guān)系。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))4 系統(tǒng)概要設(shè)計(jì)
本章將通過(guò)對(duì)系統(tǒng)功能模塊圖和系統(tǒng)流程圖的分析來(lái)闡述程序的總體設(shè)計(jì)。4.1 系統(tǒng)功能模塊結(jié)構(gòu)圖分析
圖4-1系統(tǒng)功能模塊圖
如圖4-1系統(tǒng)功能模塊圖系統(tǒng)功能模塊圖所示,整個(gè)系統(tǒng)主要包含商品購(gòu)買、登錄注冊(cè)、個(gè)人中心、后臺(tái)管理四個(gè)部分。對(duì)于商品的購(gòu)買而言,所有的人都能夠?yàn)g覽系統(tǒng)中的所有的商品并選擇自己想要購(gòu)買的商品,對(duì)于商品的購(gòu)買有兩種方式,可以在選擇商品的時(shí)候就進(jìn)行購(gòu)買,也可以將商品加入到自己的購(gòu)物車中然后在購(gòu)物車中付費(fèi)購(gòu)買商品,當(dāng)然后面對(duì)于將商品加入購(gòu)物車以及購(gòu)買商品都是需要會(huì)員登錄的。對(duì)于注冊(cè)和登錄而言,根據(jù)不同的系統(tǒng)角色,則有不同的注冊(cè)和登錄的方式。本系統(tǒng)中分為三類角色:系統(tǒng)管理員、品牌管理員、會(huì)員,其中系統(tǒng)管理員是系統(tǒng)內(nèi)置的用戶,不能通過(guò)注冊(cè)產(chǎn)生,品牌管理員通過(guò)注冊(cè)產(chǎn)品,在品牌管理員注冊(cè)的時(shí)候需要將自己的品牌信息一起注冊(cè),注冊(cè)成功過(guò)后等待系統(tǒng)管理員的審核。品牌管理員登錄系統(tǒng)成功過(guò)后則管理自己的基本信息和商品信息,包括:品牌信息、商品類型、商品信息、訂單信息等。對(duì)于系統(tǒng)會(huì)員也是通過(guò)注冊(cè)產(chǎn)生,注冊(cè)時(shí)需要簡(jiǎn)單的用戶名和密碼以及郵箱地址,注冊(cè)成功過(guò)后不需要等待管理員的審核便可以登錄,登錄成功過(guò)后能夠?qū)ψ约旱膫€(gè)人中心進(jìn)行管理,包括對(duì)自己的基本信息的管理、登錄密碼、支付密碼的管理以及購(gòu)物車和訂單的管理。對(duì)于后臺(tái)管理則需要要根據(jù)管理員的權(quán)限來(lái)確定,系統(tǒng)管理員主要是管理品牌管理
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))員,品牌管理員主要是管理品牌下的商品類型、商品信息、訂單等等。整個(gè)系統(tǒng)的架構(gòu)采用
4.2 系統(tǒng)功能流程圖
圖 4-2 系統(tǒng)功能流程圖
如圖4-2 系統(tǒng)功能結(jié)構(gòu)圖所示,本系統(tǒng)所有人都可進(jìn)行瀏覽和查看商品信息,當(dāng)需要將商品加入到購(gòu)物車或者需要購(gòu)買商品的時(shí)候則需要會(huì)員登錄系統(tǒng)才行,在登錄的時(shí)候會(huì)對(duì)用戶的用戶名和密碼進(jìn)行判斷,登錄成功過(guò)后才能將商品加入到購(gòu)物車中和商品的購(gòu)買,同時(shí)也可以進(jìn)入到個(gè)人中心管理個(gè)人的各項(xiàng)信息。如果還沒(méi)有會(huì)員賬號(hào)則可以注冊(cè)一個(gè),通過(guò)成功過(guò)后即可登錄系統(tǒng)。在商品的購(gòu)買過(guò)程中會(huì)檢測(cè)用戶是否登錄,用戶沒(méi)有登錄則提示用戶進(jìn)行登錄,如果用戶已經(jīng)登錄則處理商品的數(shù)據(jù),然后進(jìn)行購(gòu)買,在購(gòu)買支付的過(guò)程中會(huì)檢測(cè)用戶的賬戶余額,如果余額不足就作出提示,反之則直接購(gòu)買商品成功。
管理員分為兩類系統(tǒng)管理員和品牌管理員,系統(tǒng)管理員主要管理品牌管理員,審核管理員、刪除等,系統(tǒng)管理員由系統(tǒng)內(nèi)置。品牌管理員有注冊(cè)生成,注冊(cè)成功則等待系統(tǒng)管理員的審核,注冊(cè)失敗則返回注冊(cè)頁(yè)面進(jìn)行重新注冊(cè)。品牌管理員通過(guò)審核過(guò)后就可以登錄到系統(tǒng)后臺(tái)。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))5 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)
5.1 公共模塊設(shè)計(jì)與實(shí)現(xiàn)
本節(jié)從以下幾個(gè)方面進(jìn)行介紹,詳細(xì)的說(shuō)明整個(gè)程序的架構(gòu)和一些公共模塊: 5.1.1 程序目錄結(jié)構(gòu)
圖5-1項(xiàng)目目錄結(jié)構(gòu)圖
如圖5-1項(xiàng)目目錄結(jié)構(gòu)圖所示,圖中展示了該系統(tǒng)的代碼以及各項(xiàng)資源。從src目錄下的org.cde.edu.shop目錄下能夠很好的理解整個(gè)系統(tǒng)的核心架構(gòu),在系統(tǒng)架構(gòu)中采用Dao、Service、Controller的處理方式,結(jié)合頁(yè)面的View,便是典型的MVC模式。Dao和Service主要通過(guò)Hibernate處理數(shù)據(jù)持久層,Controller作為核心控制器,處理系統(tǒng)的業(yè)務(wù)邏輯。
右邊部分是項(xiàng)目Webroot目錄結(jié)構(gòu),在該目錄結(jié)構(gòu)下存放的是頁(yè)面以及頁(yè)面的資源。5.1.2 系統(tǒng)整體架構(gòu)
該系統(tǒng)采用的MVC的編程模式,MVC模式(Model-View-Controller)是軟件工程中的一種軟件架構(gòu)模式[9],把軟件系統(tǒng)分為三個(gè)基本部分:模型(Model)、視圖(View)和控制器(Controller)。在本系統(tǒng)的架構(gòu)中是以Html作為視圖層,通過(guò)FreeMarker作為頁(yè)面標(biāo)簽來(lái)處理和展示數(shù)據(jù),同時(shí)在一定程度上使用Jquery的Ajax處理數(shù)據(jù)的交互并結(jié)合Jquery的DOM操作來(lái)實(shí)現(xiàn)頁(yè)面效果。控制器則是采用的SpringMvc,通過(guò)
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))SpringMvc作為核心控制器處理系統(tǒng)的所有的業(yè)務(wù)邏輯。模型層則是JavaBean,結(jié)合Dao與Service中的Hibernate來(lái)處理數(shù)據(jù)[8]。
5.1.3 baseDao介紹
BaseDao是整個(gè)系統(tǒng)與數(shù)據(jù)庫(kù)交互,處理數(shù)據(jù)的核心接口,在該接口中聲明了許多的方法,通過(guò)BaseDaoImp來(lái)實(shí)現(xiàn),以此作為整個(gè)系統(tǒng)的核心,在實(shí)現(xiàn)類中是通過(guò)Spring的HibernateTemplate來(lái)調(diào)用各種方法來(lái)處理數(shù)據(jù)的。HibernateTemplate是Spring對(duì)Hibernate的Session的進(jìn)一步封裝,使用HibernateTemplate 非常簡(jiǎn)單。創(chuàng)建Hi bernateTemplate 實(shí)例后,注入一個(gè)SessionFactory 的引用,就可執(zhí)行持久化操作。SessionFactory 對(duì)象可通過(guò)構(gòu)造參數(shù)傳入,或通過(guò)設(shè)值方式傳入。下面對(duì)該結(jié)構(gòu)中的部分方法做一定的介紹。
(1)根據(jù)條件獲取一條數(shù)據(jù)的方法,在basedao中聲明了兩個(gè)方法來(lái)實(shí)現(xiàn)該功能: public T getEntity(String property,Object value);public T getEntity(String[] properties,Object[] values);在這兩個(gè)方法中第一個(gè)是傳入一個(gè)屬性值和屬性名稱,根據(jù)這一個(gè)條件去查詢相應(yīng)的數(shù)據(jù),只返回一條數(shù)據(jù)。第二個(gè)方法則是多條件查詢,該方法兩個(gè)參數(shù)都是數(shù)組,第一個(gè)數(shù)組是String類型,存放的是字段名數(shù)組。該方法的第二個(gè)參數(shù)是Object類型的數(shù)組,存放的是對(duì)應(yīng)字段的值。在具體的方法實(shí)現(xiàn)中通過(guò)對(duì)數(shù)組的循環(huán)生成查詢的hql語(yǔ)句。
(2)根據(jù)條件獲取數(shù)據(jù)集合的方法,在BaseDao中同樣聲明了兩個(gè)方法,兩個(gè)方法如下:
public List
(3)分頁(yè)查詢方法
public Pager findByPager(Pager pager,String hql);該方法實(shí)現(xiàn)了分頁(yè)查詢的,主要應(yīng)用于前段頁(yè)面需要顯示列表的時(shí)候數(shù)據(jù)過(guò)大進(jìn)行
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))分頁(yè)操作的,每次只查詢當(dāng)前頁(yè)的數(shù)據(jù)。該方法需要兩個(gè)參數(shù),第一個(gè)是分頁(yè)基類Pager,另外一個(gè)則是查詢的hql語(yǔ)句。為了做到靈活多變以及實(shí)現(xiàn)各種條件的查詢,這兒的查詢語(yǔ)句用調(diào)用的方法提供,根據(jù)不同的業(yè)務(wù)邏輯程序設(shè)計(jì)者自己實(shí)現(xiàn)。
(4)為針對(duì)發(fā)展的查詢條件同樣的basedao中聲明了兩個(gè)方法來(lái)實(shí)現(xiàn)這樣的功能,兩個(gè)方法都只需要傳入一個(gè)hql語(yǔ)句,通過(guò)具體的實(shí)現(xiàn),兩個(gè)方法分別返回一條數(shù)據(jù)和一個(gè)list數(shù)據(jù)集合。方法聲明如下:
public List
public Boolean isExists(String property,Object value);該方法聲明要實(shí)現(xiàn)的功能是判斷某個(gè)值是否存在。該方法需要兩個(gè)參數(shù),一個(gè)是字段名稱,另一個(gè)則是字段對(duì)應(yīng)的值,最后方法返回Boolean的true和false。5.1.4 分頁(yè)bean介紹
絕大多數(shù)系統(tǒng)對(duì)于數(shù)據(jù)過(guò)大都會(huì)采用分頁(yè),在該系統(tǒng)中也采用了常規(guī)的分頁(yè),分頁(yè)的各種數(shù)據(jù)是通過(guò)pager這個(gè)javabean來(lái)保存的。在Pager中有一下幾個(gè)參數(shù):
private Integer pageNumber = 1;// 當(dāng)前頁(yè)碼
private Integer pageSize = 15;// 每頁(yè)記錄數(shù) private Integer totalPage = 0;// 總記錄數(shù) private Integer pageCount = 0;// 總頁(yè)數(shù) private String keyWord;//查詢關(guān)鍵字r private List> list;// 數(shù)據(jù)List 如上代碼所示,pageNumber記錄的是當(dāng)前頁(yè),pageSize記錄的每一頁(yè)顯示的數(shù)據(jù)條數(shù),totalPage記錄的是總的數(shù)據(jù)條數(shù),pageCount記錄的是總的頁(yè)數(shù)。這些數(shù)據(jù)都是分頁(yè)所需要的基本數(shù)據(jù)。keyWord存放的是搜索關(guān)鍵字用于查詢使用,對(duì)于這個(gè)關(guān)鍵字的設(shè)計(jì)是這樣考慮和實(shí)現(xiàn)的,單條件查詢keyWord中就存放單個(gè)值,多條件查詢則將查詢條件封裝成json格式,由后臺(tái)解析在組成hql語(yǔ)句,以此來(lái)實(shí)現(xiàn)多條件查詢搜索。List屬性是用來(lái)存放查詢返回的數(shù)據(jù)的。
5.2系統(tǒng)模塊實(shí)現(xiàn)
在本節(jié)中將對(duì)系統(tǒng)的具體的功能的設(shè)計(jì)和實(shí)現(xiàn)做詳細(xì)的介紹,并對(duì)系統(tǒng)完成過(guò)后所取得的一些效果進(jìn)行展示。
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))5.2.1 商品展示和購(gòu)買模塊
本系統(tǒng)是以品牌為中心進(jìn)行展示和管理的,系統(tǒng)內(nèi)置7大類型,在7大類型下面有著各種各樣的品牌,在品牌才是各種商品的類型。這種邏輯關(guān)系很好的體現(xiàn)了系統(tǒng)作為一個(gè)平臺(tái)的特點(diǎn)。
圖5-2 網(wǎng)站首頁(yè)圖
如圖5-2網(wǎng)站首頁(yè)圖所示,整個(gè)導(dǎo)航條按照日用百貨、服飾、電器/家電、數(shù)碼、家具建材、汽車/配件、飾品這七大類來(lái)進(jìn)行展示,在頁(yè)面的右邊則是這七大類下的品牌的導(dǎo)航,通過(guò)這兒能夠跳轉(zhuǎn)到某一個(gè)品牌的展示頁(yè)去瀏覽和選購(gòu)商品。在品牌的展示頁(yè)首先是通過(guò)Ajax展示所有的商品,在品牌的展示頁(yè)能夠通過(guò)該品牌下的類型來(lái)篩選商品信息。對(duì)于首頁(yè)顯示的數(shù)據(jù)大部分來(lái)自于Jquery的Ajax請(qǐng)求,然后通過(guò)Jquery操作Dom生成而來(lái),核心代碼如下:
//查詢 日用百貨 的所有品牌
trademarks = trademarkService.getList(“flag”, flag);if(trademarks!=null && trademarks.size()>0){ //將信息存放到object中
object.put(“title”, title);object.put(“trademarks”, JSONArray.fromObject(trademarks));//將object放入到array中
array.add(object);} 以上代碼是查詢某一主類型下的品牌信息,最后將主類型以及主類型下的品牌信息封裝到一個(gè)JsonObject中,然后存放到JsonArray數(shù)組中。最后將7個(gè)主類型的品牌獲
成都學(xué)院學(xué)士學(xué)位論文(設(shè)計(jì))取完,JsonArray中的數(shù)據(jù)就是前段顯示所需的數(shù)據(jù)。
//循環(huán)遍歷data數(shù)據(jù),生成品牌信息
for(var i=0;i html = ' proteus使用總結(jié) 相關(guān)設(shè)置: 1、如何設(shè)置電源為所需的電壓值? 答:在菜單選項(xiàng)的“Design”選擇“Configure Power Rails”,會(huì)彈出一個(gè)對(duì)話框,選擇“Name”為“Vcc”,然后在“voltage”中設(shè)置所需電源的值 2、當(dāng)仿真時(shí)不小心關(guān)掉了示波器的顯示波形,第二次仿真時(shí),示波器的波形就不會(huì)顯示出 來(lái),如何讓示波器波形顯示出來(lái)? 答:點(diǎn)擊仿真運(yùn)行,在運(yùn)行過(guò)程中,右鍵選擇示波器,在彈出的對(duì)話框中選擇“Digital Oscilloscope” JavaMail 概述 SUN公司發(fā)布的用來(lái)處理EMAIL的API,提供給開發(fā)者處理電子郵件相關(guān)的編程接口。它雖是SUN的API,但它還沒(méi)被加在標(biāo)準(zhǔn)的JAVA開發(fā)工具包中,這就意味著你使用前必須另外下載JAVAMAIL文件。除此之外你還需要SUN的JAVABEANS Activation Framework(JAF)。Javabeans activation framework運(yùn)行很復(fù)雜,簡(jiǎn)單的說(shuō)就是JAVAMAIL的運(yùn)行必須得依賴于它的支持。 下載安裝 JAVAMAIL是可選包,項(xiàng)目中需要用到就去官網(wǎng)下載,同時(shí)也需要下載JAF。安裝JAVAMAIL只需要把它們直接把它們COPY到lib里(web項(xiàng)目不需要build path,java項(xiàng)目build path一下)就算安裝成功。 所需的兩個(gè)jar包: JAVAMAIL mail.jar ACTIVATION activation-1.1.jar 底層 Session,Message,Address,Authenticator,Transport,Store,Folder等。Session定義了一個(gè)基本的郵件會(huì)話,它需要從Properties中讀取類似于郵件服務(wù)器,用戶名和密碼等信息。另外很好的實(shí)現(xiàn)了JavaMail API的框架有James、Spring Mail。Tips SMTP:用于由源地址到目的地址傳送郵件的規(guī)則,由它來(lái)控制信件的中轉(zhuǎn)方式。它幫助每臺(tái)計(jì)算機(jī)在發(fā)送或中轉(zhuǎn)信件時(shí)找到下一個(gè)目的地。用來(lái)發(fā)送或中轉(zhuǎn)發(fā)出的電子郵件。 關(guān)于 java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream解決辦法 在編寫郵件發(fā)送相關(guān)程序時(shí),會(huì)報(bào)錯(cuò)! 主要原因是 javax.mail和javax.activation這兩個(gè)包已經(jīng)在javaEE5當(dāng)中屬于基礎(chǔ)包了,就是JDK中自帶了已經(jīng),但是里面的方法與現(xiàn)在外面的mail.jar和activation.jar有一些出入,所以初學(xué)者在直接copy別人代碼的時(shí)候往往會(huì)出現(xiàn)上面的錯(cuò)誤。 廢話不多說(shuō)下面是解決方法 進(jìn)到 X:/Program Files/MyEclipse 6.5/myeclipse/eclipse/plugins/com.genuitec.eclipse.j2eedt.core_6.5.0.zmyeclipse650200806/data/libraryset/EE_5 這個(gè)路徑里,可以看到j(luò)avaee.jar,用rar把這個(gè)文件打開,然后進(jìn)到j(luò)avax文件夾里,刪除mail.jar和activation.jar(我的javaee.jar里,這兩個(gè)東西是文件夾,總之刪掉就OK,不過(guò)要注意備份一下)刪掉之后運(yùn)行下面的代碼,經(jīng)行簡(jiǎn)單的修改以后就可以實(shí)現(xiàn)接收郵件的功能了!我已經(jīng)測(cè)試過(guò)完全可行。 文檔為doc格式 文檔名稱 文檔密級(jí) TSM測(cè)試總結(jié) 此次在印度進(jìn)行桌面云交付和測(cè)試,客戶都比較關(guān)心我們的TSM安全特性,大部分的客戶需求都是能夠滿足,也有部分需求滿足不了(比如:客戶想監(jiān)控web或...... Excel 2007 篩選后的復(fù)制粘貼在Excel 2007中,有時(shí)需要把篩選后的數(shù)據(jù)復(fù)制粘貼到另一個(gè)表中,但是粘貼時(shí)發(fā)現(xiàn)結(jié)果并不是篩選出來(lái)的數(shù)據(jù),而是所有的數(shù)據(jù)。這個(gè)問(wèn)題可以用下面三個(gè)...... 3.1計(jì)算流體力學(xué)基礎(chǔ)與FLUENT軟件介紹 3.1.1計(jì)算流體力學(xué)基礎(chǔ) 計(jì)算流體力學(xué)(Computational Fluid Dynamics,簡(jiǎn)稱CFD)是利用數(shù)值方法通過(guò)計(jì)算機(jī)求解描述流體運(yùn)動(dòng)的數(shù)學(xué)方程,揭...... 一、軟件設(shè)置相關(guān) 1、軟件可以通過(guò)置位MR寄存器第7位來(lái)復(fù)位W5300,清零即清楚復(fù)位。 2、W5300總線可以設(shè)置為兩種模式8位和16位,在W5300復(fù)位期間,這個(gè)值由管腳信號(hào) BIT16EN 決定...... CAD使用總結(jié) Monochorome可以使打印出來(lái)的圖片為黑白。 如何判斷圖紙尺寸:先用DLI測(cè)量左邊尺寸再除以594得出比例,再用DLI測(cè)量上邊的數(shù)據(jù)除以比例得出XXX,該圖尺寸就為594Xxxx...... Altium Designer 09 如想刪除某層,如刪除Top overlay層,先按shift+S鍵,使PCB文件單層顯示,然后鼠標(biāo)框選住Top overlay層,按Delete鍵,便刪除了Top overlay層,然后菜單:Reports/Bill...... 班費(fèi)使用總結(jié) 總體情況:為更好地維持班級(jí)工作的正常運(yùn)轉(zhuǎn),我班在開學(xué)初共收取了420元的班費(fèi),加上上個(gè)學(xué)期結(jié)余的57..7元,本學(xué)期我班可使用的班費(fèi)有477.7元。經(jīng)過(guò)一個(gè)學(xué)期的使用...... 微機(jī)室使用總結(jié)
本學(xué)期微機(jī)室在學(xué)校領(lǐng)導(dǎo)的指導(dǎo)下,結(jié)合我校的實(shí)際情況開展了信息技術(shù)教育教學(xué)工作,學(xué)期臨近結(jié)束,圓滿地完成了各項(xiàng)工作任務(wù),現(xiàn)對(duì)本學(xué)期以來(lái)的主要工作做如下總結(jié):......第四篇:proteus使用總結(jié)
第五篇:JavaMail使用總結(jié)(定稿)
聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。 TSM使用總結(jié)
EXCEL使用總結(jié)
fluent使用總結(jié)(本站推薦)
W5300使用總結(jié)
CAD使用總結(jié)
AltiumDesigner09使用總結(jié)
班費(fèi)使用總結(jié)
微機(jī)室使用總結(jié)