国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MVC的電商水果數(shù)據(jù)庫的設(shè)計與應(yīng)用

2020-07-04 02:14周奕
電腦知識與技術(shù) 2020年14期
關(guān)鍵詞:主鍵范式實體

周奕

摘要:眾所周知,數(shù)據(jù)庫在一個網(wǎng)站或者軟件的開發(fā)中是很重要的一個部分,這篇文章的主要目的是讓初學(xué)者對關(guān)系型數(shù)據(jù)庫(Mysql)有一個簡單的、初步的了解。在此,借用一個簡單的“電商水果平臺”后臺數(shù)據(jù)庫為例,通過對開發(fā)人員根據(jù)何種原則、如何創(chuàng)建數(shù)據(jù)庫表流程的了解,以及用戶在表單中填寫了相關(guān)數(shù)據(jù),在模型層接收到參數(shù)信息之后,對應(yīng)的后臺數(shù)據(jù)庫中數(shù)據(jù)的修改是如何進行的。因此,在按照數(shù)據(jù)庫的設(shè)計原則和基本步驟創(chuàng)建出三個基本表之后,通過對fruitshop.sql數(shù)據(jù)庫中的user、fruit、order三個基本表進行增刪查改四個操作后,就能夠改動這三個基本表的數(shù)據(jù)。

關(guān)鍵字:電商;MySql數(shù)據(jù)庫;三層架構(gòu)

中圖分類號:G642 文獻標(biāo)識碼:A

文章編號:1009-3044(2020)14-0272-02

1系統(tǒng)整體結(jié)構(gòu)設(shè)計

本水果電商平臺是在動態(tài)的Web工程下,基于JavaEE(Ja-va Platform Enterprise Edition)的開發(fā)技術(shù),采用B/S(Browser/Server)模式和MVC(Model-View-Controller)三層架構(gòu),主要采用Java語言進行編寫并配合使用三層架構(gòu)、JSP、Servlet、JavaS-cript等技術(shù)實現(xiàn)相應(yīng)的功能。并聯(lián)合MySql數(shù)據(jù)庫開發(fā)并更新后臺數(shù)據(jù)。

其中JavaEE是企業(yè)級應(yīng)用程序的版本,能夠幫助人們開發(fā)和部署可移植、健壯、可伸縮且安全的服務(wù)器端的Java應(yīng)用程序。B/S模式也是現(xiàn)在比較流行的客戶和服務(wù)器進行交互的模式,并且相比較于C/S(ClienffServer)模式,維護和升級程序的成本并不高,因為不需要安裝軟件,可擴展性更大,而且使用上更加的方便、靈活。MVC分別指的是模型、視圖和控制器(如下圖一所示)。三層之間的依賴關(guān)系也是相鄰層之間才能調(diào)用,絕對不能跨層調(diào)用和反向調(diào)用。

模型主要是對數(shù)據(jù)庫中的基本表進行相關(guān)操作,分為拼寫和執(zhí)行SQL語句。自定義JBHelper類,在類中編寫.iava文件用于執(zhí)行SQL語句。自定義DA0(Data Access Object)包,編寫以.dao結(jié)尾的類,用于拼寫SOL語句。

視圖位于最外層,就是指前端部分,與用戶的交互最為密切。用于接收用戶輸入的數(shù)據(jù)和輸出相關(guān)數(shù)據(jù),是用戶和平臺之間進行交互的界面。

控制器是數(shù)據(jù)訪問層和界面層之間的通道,業(yè)務(wù)層是MVC中的主要部分,主要是實現(xiàn)了業(yè)務(wù)邏輯,類名通常都是以ser-vices結(jié)尾。

2數(shù)據(jù)庫的設(shè)計

2.1數(shù)據(jù)庫的設(shè)計原則

2.1.1實體之間的關(guān)系

實體是指在現(xiàn)實中客觀存在并且人們能夠進行區(qū)分的物體。實體之間存在三種關(guān)系,分別是一對一、一對多、多對多的關(guān)系。在數(shù)據(jù)庫中,我們可以將實體對應(yīng)為基本表去理解,在明確了實體之間的關(guān)系之后,設(shè)計數(shù)據(jù)庫表就非常便捷。

2.1.2主鍵與外鍵

一般來說,一個實體不能主鍵和外鍵都沒有。主鍵就是抽象的實體;外鍵是指在某個表中不是主鍵,但在另一個表中是主鍵。主鍵與外鍵的聯(lián)系就說明了實體與實體之間的關(guān)系,在使用時,就可以依靠這種相互關(guān)系去操作數(shù)據(jù)庫。

2.1.3范式標(biāo)準(zhǔn)

基本表及其各個字段之間的關(guān)系,應(yīng)該盡量滿足第三范式(即在滿足第二范式的基礎(chǔ)上消除元素之間互相依賴的關(guān)系)。但是,并不是說滿足了第三范式要求的數(shù)據(jù)庫就是最好的,有時在設(shè)計數(shù)據(jù)庫是為了能夠提高數(shù)據(jù)庫的使用效率,就要采用以時間換空間的方法,因此在設(shè)計基本表時要適當(dāng)?shù)卦黾尤哂唷?/p>

2.2數(shù)據(jù)庫設(shè)計的基本步驟

按照規(guī)范化設(shè)計的原則,數(shù)據(jù)庫的設(shè)計大體上可以分為六個階段,分別是進行需求分析下、概念結(jié)構(gòu)設(shè)計、邏輯結(jié)構(gòu)設(shè)計、物理結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫的實施和數(shù)據(jù)庫的運行與維護。

2.3數(shù)據(jù)庫表

本平臺所使用的數(shù)據(jù)庫名是fruitshop.sql,下面是所用到的表結(jié)構(gòu)。

2.3.1 user表(用戶表)

用來存儲用戶的信息,主鍵為username,表中的屬性有usemame(用戶名)、password(密碼)、tel(電話),屬性值均不允許為空。

2.3.2 fruit表(水果表)

用來存儲水果的信息,主鍵為fruitname,表中的屬性有fTuitname(水果名)、price(價格)、inventory(庫存量)、discount(折扣)、field(產(chǎn)地),屬.陛值均不允許為空。

2.3.3 order表(訂單表)

用來生成用戶訂單的表,并且同時能夠修改水果表中的數(shù)據(jù)。主鍵為username,表中的屬性有number(訂單號)、username(用戶名)、fruitname(水果名)、price(價格)、quantiIy(數(shù)量)、discount(折扣)、sum(總計),屬性值均不允許為空。

3數(shù)據(jù)庫中表的有關(guān)操作

3.1初始化表

表的初始化在表建成之后按照要求往表中加人數(shù)據(jù)即可,在此不多做贅述。

3.2user表

猜你喜歡
主鍵范式實體
范式空白:《莫失莫忘》的否定之維
孫惠芬鄉(xiāng)土寫作批評的六個范式
前海自貿(mào)區(qū):金融服務(wù)實體
管窺西方“詩辯”發(fā)展史的四次范式轉(zhuǎn)換
實體的可感部分與實體——兼論亞里士多德分析實體的兩種模式
兩會進行時:緊扣實體經(jīng)濟“釘釘子”
振興實體經(jīng)濟地方如何“釘釘子”
數(shù)據(jù)庫主鍵設(shè)置探討
孙吴县| 永清县| 峨山| 和硕县| 上思县| 湾仔区| 义乌市| 潞西市| 崇礼县| 涟源市| 云龙县| 西吉县| 正镶白旗| 浦城县| 招远市| 黄平县| 梓潼县| 襄城县| 将乐县| 依兰县| 平罗县| 惠来县| 尤溪县| 河西区| 宁南县| 临沂市| 科技| 义马市| 武山县| 新宁县| 河东区| 武宁县| 永安市| 大方县| 保山市| 松桃| 塔河县| 宝应县| 桦甸市| 泽普县| 南雄市|