截止目前累计成功为5,000,000 用户成功查重检测

CNCNKI学术不端文献查重检测系统 多语种 图文 高校 期刊 职称 查重 抄袭检测系统

基于grails的网上图书销售系统的设计与实现

时间:2016-07-04 22:49:00 编辑:知网 阅读:

随着数字化,信息化,网络化的信息时代的来临,电子商务这种全新的商业交易模式不断崛起。网上图书销售系统作为其中的一种表现形式也逐渐的走进了我们的生活。网上购书也渐渐的成为人们购书的首选。

本文通过对网上图书销售分析和研究,系统利用新兴的技术BootStrap前端框架,Grails框架和PostgreSQL数据库,开发出一套基于B/S结构的网上图书销售系统。系统实现了用户模块、图书模块、订单与购物车模块的基本信息管理的功能。使用JavaScript技术实现了动态页面给用户带来良好的体验,通过模拟post请求,拼接xml报文并利用XML.parse解析接收的报文实现了用户绑卡和支付的功能。

1、研究背景

随着数字化、信息化、网络化的信息时代的来临,电子商务这种全新的商业交易模式不断崛起,悄然改变了人们的思维和生活方式。与此同时,网上图书销售系统作为其中的一种表现形式也逐渐的步入了我们的生活[1]。相对于实体书店,网上图书销售系统有着较低的价格、更多的选择机会并提供送货上门的服务等。对于人们快节奏的生活方式,网上图书销售系统的出现无疑给大众提供了一种便利的选择。目前,网上图书销售系统正不断进步,日臻成熟[2]

2、研究意义

图书是人们生活和学习中必需品,因其特有的数量庞大,差异性小的优势,适合在网络上销售。网上图书销售系统的实现,使传统的购书的方式发生了改变。用户可以足不出户就能买到图书[3]。与实体书店相比,网上图书销售系统不受地域的限制,同时包含了各行各业的书籍可供用户选择。当用户购买图书之后,会以最快的方式发货,并通过邮件的形式友好的提示用户。基于B/S结构实现的网上图书销售系统的实现,为用户提供了更好的体验,用户只需要有浏览器即可。

(二)国内外的研究现状

随着信息技术的发展,互联网几乎成了家喻户晓的代名词,这一现象的出现给网上图书销售系统的发展带来了更为广阔的前景。利用网上图书销售系统选择、购买图书逐渐成为了用户购买图书的首选。这一技术在国内外都取得了一定的成就。

1、国外研究现状

美国的亚马逊是我们所知道的国外影响比较大的网上书店,它拥有广泛的资源,独特的销售模式,健全的售后服务体系,跨平台的产品布局,以及良好的用户体验。亚马逊可以根据用户的兴趣,购书的情况或者一段时间的图书销售量给用户推荐图书。而且用户也可以为图书写书评,也可邀请其他用户一起写书评,从而使用户对图书有更深的理解[4]

2、国内研究现状

我国的网上图书销售系统虽不如国外的同行,但也有很多电商在不断发展着自己的网上售书系统。当当网是其中比较成功,它的图书销售系统中包含了海量的图书信息,用户可以方便的查看,搜索,购买图书。诸如图书评论和图书推荐等个性化服务上,还是不够完善[5]

3、当前网上图书销售系统存在的问题

目前网上图书销售系统的普遍存在的问题是用户访问量大,但是成交量小。除此之外,国内大部分网上图书销售系统的个性化服务上都需要完善。虽然,网上图书销售系统还面临着很多问题,但是它必然会成为人们购书的主要途径。而且这些问题在不久的将来也会找到有效的解决方法。

(三)本文主要工作

本文所涉及的系统在B/S模式基础之上的。系统实现综合运用了JavaScript语言,html语言,groovy语言,BootStrap框架和Grail框架,并采用PostgreSQL数据库存储数据。通过系统用户可以浏览、搜索、购买图书,同时可以对图书进行评论。本文主要介绍了系统涉及的相关技术和相关配置,并对系统中各个模块主要功能的设计和实现进行简单介绍和分析。

(四)本文结构

第一章是,简单介绍了课题研究与意义、分析了国内外的研究现状,概括了本文主要工作和结构。

第二章是相关技术介绍,包括grails框架,BootStrap框架,JavaScript语言和PostgreSQL数据库。

第三章是系统总体设计,包括系统功能模块的设计和概述以及相应的数据库设计。

第四章是的详细设计和。介绍数据库配置和插件配置的同时也详细描述了涉及的五大模块的相关功能和。

第五章对于系统进行总结概括,并且提出了该系统今后的发展方向。

二、相关技术介绍

(一)GRAILS框架介绍

基于快捷开发的思想的Grails ,是搭建在Groovy上的一个开源的Web框架。grails提供了一个强大的插件机制,除了核心功能外,很多都可以通过插件来完成。由于Grails采用“不重复开发”并遵循“约定优于配置”的原则,减少了繁琐的配置文件的需求,同时还可自动生成Web程序中控制器、相应的页面和对应的测试类等,降低了用Java开发Web程序的难度和复杂度[6]

(二)BOOTSTRAP框架介绍

BootStrap是目前比较流行的前端框架。国外很多大型的公司比如NASA的MSNBC的Breaking News就使用了BootStrap框架。与此同时,国内的WeX5前端框架也是对Bootstrap源码的优化。BootStrap强大的响应式功能,可以适应各种笔记本,手机,平板的屏幕的大小,不需为每一种设备都开发一套页面[7]

(三)JAVASCRIPT技术介绍

JavaScript是基于对象和事件驱动的动态语言,属于页面的一部分,主要应用于客户端。JavaScript的特点是交互性,安全性和跨平台性。它是从交互的角度来提升用户体验的[8]

(四)POSTGRESQL数据库介绍

PostgreSQL 是一种关系型数据库服务器,支持多种类型,包括IP类型和几何类型等特殊类型。它支持大部分 SQL标准的同时,还提供了很多其他特性例如:复杂查询、触发器、事务完整性等。另外,PostgreSQL 可以用聚集函数,索引等很多其他方法扩展[9]。但是它在提高数据库集群,自动化的系统优化功能等数据库性能机制的方面还有待提高。

三、系统总体设计

(一)总体功能模块设计

为了实现基本的图书销售 ,系统按照功能划分成了五大模块,每一个模块都有自己的对应功能并且登录系统用户的角色不同,所使用的功能也不同。系统的功能模块设计如图1所示。

 

图1 系统功能结构图

(二)系统功能模块概述

1、用户模块

用户模块是用来在系统中的用户。在成功后,可以自己的信息。管理员通过系统后台对注册成功的进行统一的维护,比如搜索符合要求的用户、创建角色、用户授权等,其中创建角色和用户授权使用spring-security-core插件来实现。

2、图书模块

在图书模块中,用户可以通过系统前台浏览图书,也可根据具体的某一个条件或者某些条件的组合搜索图书,也可购买图书,也可对购买图书进行评论。管理员则在系统后台维护与图书相关的信息,从而使用户看到最新的图书信息。

3、 购物车模块

在购物车模块中,用户可选择图书并把它加入购物车,然后可继续浏览添加图书,也可移除其中的某一项然后执行后续操作。当不想购买某一图书时可把它移除,还可选择删除当前购物车。

4、订单模块

订单模块可以进行与订单相关的操作。当用户确认购买之后点击确认下单,在填写收货人姓名,联系方式之后可以创建一笔新的订单。系统会根据订单的状态显示相应的操作。对于新创建的订单可以选择支付,取消订单等操作。在支付完成之后,可以进行确认收货操作,但是不可以取消订单。如果订单支付失败,可以选择继续支付。

5、 支付模块

支付功能在网上图书销售系统中是最重要的。综合考虑各种因素,系统采用第三方支付。用户首先需要开通支付账户,然后就可以进行支付了。为了保证能够顺利的完成,所有与相关的开户信息以及交易都有详细的,防止将来出现问题时,后台管理员可以及时的查出原因所在。而且用户所有填写的与支付相关的信息都是经过加密的,所以不需要担心隐私泄露的问题。

(三)数据库设计

通过对于系统总体结构设计的研究,以及各个功能模块的具体分析,综合考虑系统性能,以及为了以后便于系统的扩展,系统所包含的数据表以及他们之间的关系如图2所示。下面对系统中主要的几张表进行简单介绍。

 

 

图2表的实体关系图

 

注:图书类别表支持多级分类。

 

 

 

 

 

 

 

 

四、系统的详细设计和实现

(一)系统的开发配置

1、 系统数据库的配置

构建于Hibernate和Spring之上的Grails,可以根据domain类的设计自动生成数据库的表。但是grails内置的数据库并不能满足用户的需求,所以一般都会对数据库的配置文件进行修改,网上图书销售系统采用的是PostgreSQL数据库,详细的配置信息如图3。

 

图 3数据库配置信息图

2、 系统插件的配置

网上图书销售系统的权限管理,采用的是在grails应用中集成spring-security-core插件。在这个插件中,几乎一切都是可以配置的而且可以根据自己的需求修改。当系统安装了这个插件之后,在Config.groovy中进行配置,如图4所示。

返回