學(xué)子商城網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)
作者主頁:
作者簡介:Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者、CSDN博客專家 、掘金特邀作者、多年架構(gòu)師設(shè)計(jì)經(jīng)驗(yàn)、騰訊課堂常駐講師
主要內(nèi)容:Java項(xiàng)目、畢業(yè)設(shè)計(jì)、簡歷模板、學(xué)習(xí)資料、面試題庫、技術(shù)互助
文末獲取源碼?
一,項(xiàng)目簡介
? ? ? 本設(shè)計(jì)基于Laravel框架和MySQL數(shù)據(jù)庫開發(fā),Windows作為操作系統(tǒng)實(shí)現(xiàn)。本系統(tǒng)在開發(fā)設(shè)計(jì)時首先分析當(dāng)前國內(nèi)外電子商務(wù)的研究現(xiàn)狀,然后對電子產(chǎn)品商城系統(tǒng)進(jìn)行了可行性分析、需求分析,然后對系統(tǒng)功能進(jìn)行了詳細(xì)設(shè)計(jì),最終成功開發(fā)出電子產(chǎn)品商城系統(tǒng),并進(jìn)行了系統(tǒng)測試。學(xué)子商城網(wǎng)站整體上分為系統(tǒng)前臺商品展示、購買和后臺數(shù)據(jù)管理。學(xué)子商城的前臺部分,主要進(jìn)行了數(shù)據(jù)展示,用戶可以分類瀏覽商品然后進(jìn)行在線下單、支付,完成完整的前端產(chǎn)品購買流程。商城后臺管理中主要涉及到用戶數(shù)據(jù)管理、產(chǎn)品數(shù)據(jù)管理、分類數(shù)據(jù)管理、訂單數(shù)據(jù)管理、評價數(shù)據(jù)管理等模塊。
? ??前端頁面是產(chǎn)品的重要展示窗口,也是和用戶進(jìn)和交互的主要陣地,前端的頁面設(shè)計(jì)一是要美觀大方,二是要功能齊全。現(xiàn)在整個商業(yè)形態(tài)中都在以用戶體驗(yàn)為中心,各家商家為了給用戶更好的體驗(yàn)花費(fèi)不少功夫。本項(xiàng)目的前端用戶交互設(shè)計(jì)以異步請求為主,提高系統(tǒng)的響應(yīng)時間和用戶的體驗(yàn)。在功能設(shè)計(jì)上主要滿足,電子產(chǎn)品分類瀏覽,添加購物車,產(chǎn)品下單購買,個人訂單管理等功能。
? ? ?后臺數(shù)據(jù)管理功能,主要完成對前端頁面所產(chǎn)生的相關(guān)業(yè)務(wù)數(shù)據(jù)進(jìn)行管理。比如對注冊用戶的管理、商品的管理、用戶的訂單管理、產(chǎn)品分類的管理等等。后臺管理可以有效的幫助網(wǎng)站運(yùn)營者查看相關(guān)信息,了解每天的產(chǎn)品銷售情況,訂單情況,以便于及時的進(jìn)行銷售策略的調(diào)整等等,是至關(guān)重要的一環(huán)
二,環(huán)境介紹
語言環(huán)境:PHP
數(shù)據(jù)庫:Mysql: mysql5.7
應(yīng)用服務(wù)器:APACHE
開發(fā)工具:IDEA或eclipse
三,系統(tǒng)展示
3.1 前臺功能模塊實(shí)現(xiàn)
通過前臺框架的搭建,及后臺數(shù)據(jù)庫內(nèi)容的傳輸,完善了前臺頁面的所有功能,前臺首頁如圖5.1所示。

????????????????????????????????????? 圖3.1 前臺首頁界面圖
3.1.1 前臺用戶注冊登錄模塊的實(shí)現(xiàn)
任何用戶都可以在學(xué)子商城網(wǎng)站,通過注冊界面,注冊賬號密碼,然后準(zhǔn)確輸入系統(tǒng)提供的驗(yàn)證碼后,提交到系統(tǒng),系統(tǒng)會驗(yàn)證用戶輸入信息的有效性,是否符合系統(tǒng)注冊規(guī)則,驗(yàn)證無誤后系統(tǒng)會將注冊信息存入數(shù)據(jù)庫,用戶便完成了注冊。用戶完成注冊并且登錄后就可以在電商平臺上完成相關(guān)的商品搜索瀏覽、訂單和購買等業(yè)務(wù)操作。用戶注冊界面圖如圖5.2所示。用戶登錄界面圖如圖5.3所示。

圖3.2 前臺用戶注冊界面圖

圖3.3 前臺用戶登錄界面圖
用戶在注冊時,輸入要注冊的用戶名和登錄密碼,并且成功驗(yàn)證由Session服務(wù)器技術(shù)等技術(shù)生成的驗(yàn)證碼后才能成功注冊。系統(tǒng)將用戶注冊的信息上傳到數(shù)據(jù)庫,用戶登錄時輸入自己的賬號密碼,并且成功驗(yàn)證驗(yàn)證碼后,才能登錄成功。
3.1.2 前臺用戶購物車模塊的實(shí)現(xiàn)
用戶在商城看到想要購買的商品時,可以將商品選擇加入購物車,加入購物車后,可以點(diǎn)擊界面右側(cè)的購物車圖標(biāo),可以查看購物車中的商品信息,包括商品名稱、商品數(shù)量、商品價格等信息,如圖5.4所示。

圖3.4購物車預(yù)覽界面圖
3.1.3 前臺用戶訂單模塊的實(shí)現(xiàn)
用戶購買商品并成功支付后,系統(tǒng)會自動生成訂單。用戶在用戶中心選擇“實(shí)物訂單”選項(xiàng)可以查看當(dāng)前登錄賬戶的所有訂單,選擇某一個訂單點(diǎn)擊“訂單詳情”按鈕系統(tǒng)會跳轉(zhuǎn)到選中訂單的詳情界面,或者用戶輸入訂單號進(jìn)行查詢,之后用戶可以查看所選訂單的詳細(xì)信息,包括購買的商品名稱、訂單狀態(tài)、收貨地址、訂單編號等信息。實(shí)物訂單界面如圖3.6所示,訂單詳情界面如圖5.7所示。

圖3.5 用戶訂單界面圖
3.1.3 前臺用戶訂單模塊的實(shí)現(xiàn)
用戶購買商品并成功支付后,系統(tǒng)會自動生成訂單。用戶在用戶中心選擇“實(shí)物訂單”選項(xiàng)可以查看當(dāng)前登錄賬戶的所有訂單,選擇某一個訂單點(diǎn)擊“訂單詳情”按鈕系統(tǒng)會跳轉(zhuǎn)到選中訂單的詳情界面,或者用戶輸入訂單號進(jìn)行查詢,之后用戶可以查看所選訂單的詳細(xì)信息,包括購買的商品名稱、訂單狀態(tài)、收貨地址、訂單編號等信息。實(shí)物訂單界面如圖3.6所示,訂單詳情界面如圖3.7所示。

圖3.5 用戶訂單界面圖
3.2 后臺功能模塊實(shí)現(xiàn)
3.2.1 用戶管理模塊的實(shí)現(xiàn)
系統(tǒng)管理員登錄系統(tǒng)后臺后,選擇會員管理模塊,可以查看學(xué)子商城網(wǎng)站注冊用戶的個人信息,以及修改用戶的個人信息、禁止登錄等操作。用戶管理界面如圖3.8所示。

圖3.6 用戶管理界面圖
3.2.2 商品管理模塊的實(shí)現(xiàn)
在商品管理模塊管理員可以對商品進(jìn)行管理,包括新增商品信息、編輯已有商品信息、刪除商品、查詢商品等。商品管理界面如圖3.9所示。

圖3.7 商品管理界面圖
3.2.3 訂單管理模塊的實(shí)現(xiàn)
在訂單管理模塊管理員可以對實(shí)物訂單進(jìn)行管理,在訂單管理模塊中可以查看不同狀態(tài)的訂單,點(diǎn)擊修改按鈕,可以修改訂單狀態(tài)信息等,訂單列表如圖3.10所示界面。

圖3.8 訂單管理界面圖
3.2.4 分類管理模塊的實(shí)現(xiàn)
在商品分類管理模塊中,管理員可以對商品的分類信息進(jìn)行有效的管理,方便發(fā)布商品時指定分類,可以通過前端根據(jù)分類信息進(jìn)行查看。。如圖3.12所示。

圖3.9 分類管理界面圖
3.2.5 導(dǎo)航管理模塊的實(shí)現(xiàn)
在欄目導(dǎo)航管理模塊中,管理員可以對前端的導(dǎo)航信息進(jìn)行有效的管理,方便用戶在前端瀏覽,管理員在后臺可以靈活的對欄目導(dǎo)航進(jìn)行有效管理。如圖3.12所示。

圖3.10 欄目導(dǎo)航管理界面圖
3.2.6 評價管理模塊的實(shí)現(xiàn)
在評價管理模塊中,管理員可以對前端用戶對商品的評價信息進(jìn)行有效的管理,方便管理一些惡意評價操作,并可以對評價進(jìn)行相應(yīng)的回復(fù)操作。如圖3.11所示。

圖3.10 評價管理界面圖
3.2.7 幫助欄目管理模塊的實(shí)現(xiàn)
在幫助欄目管理模塊中,下分幫助中心、常見問題、服務(wù)支持幾個欄目模塊,管理員可以在后臺對其進(jìn)行分類管理,并可對各模塊添加相應(yīng)的幫助內(nèi)容信息,前端用戶在前臺頁面可以根據(jù)自己的需要分類進(jìn)行信息的查看操作。如圖3.11所示。

圖3.11 幫助欄目管理界面圖
四,核心代碼展示
return [ ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Application Debug Mode
? ?|--------------------------------------------------------------------------
? ?|
? ?| When your application is in debug mode, detailed error messages with
? ?| stack traces will be shown on every error that occurs within your
? ?| application. If disabled, a simple generic error page is shown.
? ?|
? ?*/
? ?'debug' => env('APP_DEBUG', false), ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Application URL
? ?|--------------------------------------------------------------------------
? ?|
? ?| This URL is used by the console to properly generate URLs when using
? ?| the Artisan command line tool. You should set this to the root of
? ?| your application so that it is used when running Artisan tasks.
? ?|
? ?*/
? ?'url' => 'http://localhost', ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Application Timezone
? ?|--------------------------------------------------------------------------
? ?|
? ?| Here you may specify the default timezone for your application, which
? ?| will be used by the PHP date and date-time functions. We have gone
? ?| ahead and set this to a sensible default for you out of the box.
? ?|
? ?*/
? ?'timezone' => 'UTC', ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Application Locale Configuration
? ?|--------------------------------------------------------------------------
? ?|
? ?| The application locale determines the default locale that will be used
? ?| by the translation service provider. You are free to set this value
? ?| to any of the locales which will be supported by the application.
? ?|
? ?*/
? ?'locale' => 'en', ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Application Fallback Locale
? ?|--------------------------------------------------------------------------
? ?|
? ?| The fallback locale determines the locale to use when the current one
? ?| is not available. You may change the value to correspond to any of
? ?| the language folders that are provided through your application.
? ?|
? ?*/
? ?'fallback_locale' => 'en', ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Encryption Key
? ?|--------------------------------------------------------------------------
? ?|
? ?| This key is used by the Illuminate encrypter service and should be set
? ?| to a random, 32 character string, otherwise these encrypted strings
? ?| will not be safe. Please do this before deploying an application!
? ?|
? ?*/
? ?'key' => env('APP_KEY', 'SomeRandomString'), ? ?'cipher' => 'AES-256-CBC', ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Logging Configuration
? ?|--------------------------------------------------------------------------
? ?|
? ?| Here you may configure the log settings for your application. Out of
? ?| the box, Laravel uses the Monolog PHP logging library. This gives
? ?| you a variety of powerful log handlers / formatters to utilize.
? ?|
? ?| Available Settings: "single", "daily", "syslog", "errorlog"
? ?|
? ?*/
? ?'log' => env('APP_LOG', 'single'), ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Autoloaded Service Providers
? ?|--------------------------------------------------------------------------
? ?|
? ?| The service providers listed here will be automatically loaded on the
? ?| request to your application. Feel free to add your own services to
? ?| this array to grant expanded functionality to your applications.
? ?|
? ?*/
? ?'providers' => [ ? ? ? ?/*
? ? ? ? * Laravel Framework Service Providers...
? ? ? ? */
? ? ? ?Illuminate\Foundation\Providers\ArtisanServiceProvider::class,
? ? ? ?Illuminate\Auth\AuthServiceProvider::class,
? ? ? ?Illuminate\Broadcasting\BroadcastServiceProvider::class,
? ? ? ?Illuminate\Bus\BusServiceProvider::class,
? ? ? ?Illuminate\Cache\CacheServiceProvider::class,
? ? ? ?Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class,
? ? ? ?Illuminate\Routing\ControllerServiceProvider::class,
? ? ? ?Illuminate\Cookie\CookieServiceProvider::class,
? ? ? ?Illuminate\Database\DatabaseServiceProvider::class,
? ? ? ?Illuminate\Encryption\EncryptionServiceProvider::class,
? ? ? ?Illuminate\Filesystem\FilesystemServiceProvider::class,
? ? ? ?Illuminate\Foundation\Providers\FoundationServiceProvider::class,
? ? ? ?Illuminate\Hashing\HashServiceProvider::class,
? ? ? ?Illuminate\Mail\MailServiceProvider::class,
? ? ? ?Illuminate\Pagination\PaginationServiceProvider::class,
? ? ? ?Illuminate\Pipeline\PipelineServiceProvider::class,
? ? ? ?Illuminate\Queue\QueueServiceProvider::class,
? ? ? ?Illuminate\Redis\RedisServiceProvider::class,
? ? ? ?Illuminate\Auth\Passwords\PasswordResetServiceProvider::class,
? ? ? ?Illuminate\Session\SessionServiceProvider::class,
? ? ? ?Illuminate\Translation\TranslationServiceProvider::class,
? ? ? ?Illuminate\Validation\ValidationServiceProvider::class,
? ? ? ?Illuminate\View\ViewServiceProvider::class, ? ? ? ?/*
? ? ? ? * Application Service Providers...
? ? ? ? */
? ? ? ?App\Providers\AppServiceProvider::class,
? ? ? ?App\Providers\AuthServiceProvider::class,
? ? ? ?App\Providers\EventServiceProvider::class,
? ? ? ?App\Providers\RouteServiceProvider::class,
? ?], ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Class Aliases
? ?|--------------------------------------------------------------------------
? ?|
? ?| This array of class aliases will be registered when this application
? ?| is started. However, feel free to register as many as you wish as
? ?| the aliases are "lazy" loaded so they don't hinder performance.
? ?|
? ?*/
? ?'aliases' => [ ? ? ? ?'App' ? ? ? => Illuminate\Support\Facades\App::class, ? ? ? ?'Artisan' ? => Illuminate\Support\Facades\Artisan::class, ? ? ? ?'Auth' ? ? ?=> Illuminate\Support\Facades\Auth::class, ? ? ? ?'Blade' ? ? => Illuminate\Support\Facades\Blade::class, ? ? ? ?'Bus' ? ? ? => Illuminate\Support\Facades\Bus::class, ? ? ? ?'Cache' ? ? => Illuminate\Support\Facades\Cache::class, ? ? ? ?'Config' ? ?=> Illuminate\Support\Facades\Config::class, ? ? ? ?'Cookie' ? ?=> Illuminate\Support\Facades\Cookie::class, ? ? ? ?'Crypt' ? ? => Illuminate\Support\Facades\Crypt::class, ? ? ? ?'DB' ? ? ? ?=> Illuminate\Support\Facades\DB::class, ? ? ? ?'Eloquent' ?=> Illuminate\Database\Eloquent\Model::class, ? ? ? ?'Event' ? ? => Illuminate\Support\Facades\Event::class, ? ? ? ?'File' ? ? ?=> Illuminate\Support\Facades\File::class, ? ? ? ?'Gate' ? ? ?=> Illuminate\Support\Facades\Gate::class, ? ? ? ?'Hash' ? ? ?=> Illuminate\Support\Facades\Hash::class, ? ? ? ?'Input' ? ? => Illuminate\Support\Facades\Input::class, ? ? ? ?'Lang' ? ? ?=> Illuminate\Support\Facades\Lang::class, ? ? ? ?'Log' ? ? ? => Illuminate\Support\Facades\Log::class, ? ? ? ?'Mail' ? ? ?=> Illuminate\Support\Facades\Mail::class, ? ? ? ?'Password' ?=> Illuminate\Support\Facades\Password::class, ? ? ? ?'Queue' ? ? => Illuminate\Support\Facades\Queue::class, ? ? ? ?'Redirect' ?=> Illuminate\Support\Facades\Redirect::class, ? ? ? ?'Redis' ? ? => Illuminate\Support\Facades\Redis::class, ? ? ? ?'Request' ? => Illuminate\Support\Facades\Request::class, ? ? ? ?'Response' ?=> Illuminate\Support\Facades\Response::class, ? ? ? ?'Route' ? ? => Illuminate\Support\Facades\Route::class, ? ? ? ?'Schema' ? ?=> Illuminate\Support\Facades\Schema::class, ? ? ? ?'Session' ? => Illuminate\Support\Facades\Session::class, ? ? ? ?'Storage' ? => Illuminate\Support\Facades\Storage::class, ? ? ? ?'URL' ? ? ? => Illuminate\Support\Facades\URL::class, ? ? ? ?'Validator' => Illuminate\Support\Facades\Validator::class, ? ? ? ?'View' ? ? ?=> Illuminate\Support\Facades\View::class,
? ?], ? ?'upload_image_dir' ? ? => ?'./image/upload/', ? ?'APP_NAME' => '小米商城',
];
return [ ? ?/*
? ?|--------------------------------------------------------------------------
? ?| PDO Fetch Style
? ?|--------------------------------------------------------------------------
? ?|
? ?| By default, database results will be returned as instances of the PHP
? ?| stdClass object; however, you may desire to retrieve records in an
? ?| array format for simplicity. Here you can tweak the fetch style.
? ?|
? ?*/
? ?'fetch' => PDO::FETCH_CLASS, ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Default Database Connection Name
? ?|--------------------------------------------------------------------------
? ?|
? ?| Here you may specify which of the database connections below you wish
? ?| to use as your default connection for all database work. Of course
? ?| you may use many connections at once using the Database library.
? ?|
? ?*/
? ?'default' => env('DB_CONNECTION', 'mysql'), ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Database Connections
? ?|--------------------------------------------------------------------------
? ?|
? ?| Here are each of the database connections setup for your application.
? ?| Of course, examples of configuring each database platform that is
? ?| supported by Laravel is shown below to make development simple.
? ?|
? ?|
? ?| All database work in Laravel is done through the PHP PDO facilities
? ?| so make sure you have the driver for your particular database of
? ?| choice installed on your machine before you begin development.
? ?|
? ?*/
? ?'connections' => [ ? ? ? ?'sqlite' => [ ? ? ? ? ? ?'driver' ? => 'sqlite', ? ? ? ? ? ?'database' => database_path('database.sqlite'), ? ? ? ? ? ?'prefix' ? => '',
? ? ? ?], ? ? ? ?'mysql' => [ ? ? ? ? ? ?'driver' ? ?=> 'mysql', ? ? ? ? ? ?'host' ? ? ?=> env('DB_HOST', 'localhost'), ? ? ? ? ? ?'database' ?=> env('DB_DATABASE', 'forge'), ? ? ? ? ? ?'username' ?=> env('DB_USERNAME', 'forge'), ? ? ? ? ? ?'password' ?=> env('DB_PASSWORD', ''), ? ? ? ? ? ?'charset' ? => 'utf8', ? ? ? ? ? ?'collation' => 'utf8_unicode_ci', ? ? ? ? ? ?'prefix' ? ?=> '', ? ? ? ? ? ?'strict' ? ?=> false,
? ? ? ?], ? ? ? ?'pgsql' => [ ? ? ? ? ? ?'driver' ? => 'pgsql', ? ? ? ? ? ?'host' ? ? => env('DB_HOST', 'localhost'), ? ? ? ? ? ?'database' => env('DB_DATABASE', 'forge'), ? ? ? ? ? ?'username' => env('DB_USERNAME', 'forge'), ? ? ? ? ? ?'password' => env('DB_PASSWORD', ''), ? ? ? ? ? ?'charset' ?=> 'utf8', ? ? ? ? ? ?'prefix' ? => '', ? ? ? ? ? ?'schema' ? => 'public',
? ? ? ?], ? ? ? ?'sqlsrv' => [ ? ? ? ? ? ?'driver' ? => 'sqlsrv', ? ? ? ? ? ?'host' ? ? => env('DB_HOST', 'localhost'), ? ? ? ? ? ?'database' => env('DB_DATABASE', 'forge'), ? ? ? ? ? ?'username' => env('DB_USERNAME', 'forge'), ? ? ? ? ? ?'password' => env('DB_PASSWORD', ''), ? ? ? ? ? ?'charset' ?=> 'utf8', ? ? ? ? ? ?'prefix' ? => '',
? ? ? ?],
? ?], ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Migration Repository Table
? ?|--------------------------------------------------------------------------
? ?|
? ?| This table keeps track of all the migrations that have already run for
? ?| your application. Using this information, we can determine which of
? ?| the migrations on disk haven't actually been run in the database.
? ?|
? ?*/
? ?'migrations' => 'migrations', ? ?/*
? ?|--------------------------------------------------------------------------
? ?| Redis Databases
? ?|--------------------------------------------------------------------------
? ?|
? ?| Redis is an open source, fast, and advanced key-value store that also
? ?| provides a richer set of commands than a typical key-value systems
? ?| such as APC or Memcached. Laravel makes it easy to dig right in.
? ?|
? ?*/
? ?'redis' => [ ? ? ? ?'cluster' => false, ? ? ? ?'default' => [ ? ? ? ? ? ?'host' ? ? => env('REDIS_HOST', 'localhost'), ? ? ? ? ? ?'password' => env('REDIS_PASSWORD', null), ? ? ? ? ? ?'port' ? ? => env('REDIS_PORT', 6379), ? ? ? ? ? ?'database' => 0,
? ? ? ?],
? ?],
];
五,項(xiàng)目總結(jié)
?本文不但對學(xué)子商城網(wǎng)站在建設(shè)中的可行性、需要及其總體設(shè)計(jì)等諸多方面做出了分析,還對所用得到的技術(shù)做了深刻地探究與介紹。本文主要研究的內(nèi)容主要包括以下六個方面:
?? 1.研究并詳細(xì)介紹了電子商城的背景、國內(nèi)外現(xiàn)狀和發(fā)展趨勢。
?? 2.對商城的前后臺兩個子系統(tǒng)的需求進(jìn)行了詳細(xì)地分析。
?? 3.合理地分析與設(shè)計(jì)了商城系統(tǒng)需要用到的數(shù)據(jù)庫表結(jié)構(gòu)。
?? 4.對商城系統(tǒng)的業(yè)務(wù)邏輯進(jìn)行了詳細(xì)闡述,并給出了實(shí)現(xiàn)代碼。
??? 5.研究如何將Laravel框架應(yīng)用到商城系統(tǒng),并在此框架上實(shí)現(xiàn)了。
?? 6.編寫與執(zhí)行針對本系統(tǒng)的測試用例。
?? 本文所實(shí)現(xiàn)的學(xué)子商城系統(tǒng),本系統(tǒng)的創(chuàng)新點(diǎn)主要是以下兩個方面:
?? 1.采用Laravel框架。本系統(tǒng)采用的是當(dāng)下最流行、應(yīng)用最廣的Laravel 框架搭建的 Web 項(xiàng)目。此框架集成度高,開發(fā)速度快。
?? 2.完整地介紹了一個電子商城的開發(fā)流程。本文從Web項(xiàng)目開發(fā)必備環(huán)境及軟件介紹,到相關(guān)運(yùn)行環(huán)境和技術(shù)的要求,詳細(xì)地介紹了前臺、后臺和測試的全部工作流程,再到前后臺代碼的編寫,再到測試用例的編寫和使用。實(shí)現(xiàn)了從用戶注冊、登錄到瀏覽商品再到自主添加購物車、訂單支付等一系列B2C商城系統(tǒng)所應(yīng)具有的全部的功能,最后加上對用戶與網(wǎng)站的不同需求綜合分析、數(shù)據(jù)庫架構(gòu)設(shè)計(jì),完整地實(shí)現(xiàn)了一個Web 項(xiàng)目從無到有的開發(fā)過程。