基于JSP技术的线下书店管理系统的开发
2018-02-25顾奇
顾奇
摘要 计算机的迅猛发展不仅促使了淘宝等电子商务巨头的发展,也给传统的线下商店的运行模式带来了巨变。借助于计算机这一工具,商店的销售人员可以快速的进行结算,管理人员可以轻易的查看业绩,统筹商店的未来发展,而作为消费者也能够通过计算机快速找到自己需要的货物。本篇论文就是基于JSP技术,借助主流框架,对传统书店做一个可行的B/S架构的书店管理系统。
【关键词】B/S架构 JsP技术 线下书店管理
1 前言
网络购物已成为现代人的基本能力之一的同时,传统的商店购物也借助于计算机愈加简便和成熟。相比于电子商务,线下商店由于其实体的存在,所要考虑的问题要简单具体的多,其实现也远没有电子商务那样复杂。本篇论文尝试对书店这一具体情形,给出一个基于B/S架构的具体实现。可以看出相对于c/s架构,B/S架构开发较为容易,安装和使用也更为方便。论文尝试借助7个不同的功能界面,并划分出两类用户角色:商店管理者、商店销售员,使得商店的大部分常规需求得以正常实现,同时为后续可能的功能扩充留下一个良好的布局。
2 总体设计
2.1 系统需求分析
一个常规的书店应当具有诸如店主的管理人员,也应该具有多个销售人员。因此,系统应当至少具有以下主要功能:
系统能够维护图书的基本信息,动态更新其实时信息,并利用实时信息生成榜单。销售人员借助系统能够进行商品的结算、货物的导购。允许商店采用会员机制,根据其购买额实时更新其等级,折扣随等级提高。管理者借助系统能够管理全局,包括但不限于权限的更改、全部信息的查看与调整维护。
2.2 整体构建
通过共用数据库,销售人员与管理人员可以实现完整的业务。因此,完整的系统包含三个模块:服务器端、管理人员客户端、销售人员客户端。
服务器端:Web应用服务器由Apachetomcat服务器承担,同时使用Mysq15.0或以上版本作为数据库。由于使用JSP技术,服务主机需要安装jdk6.0或以上版本。管理人员客户端:管理员需要安装Chrome或其它主流浏览器,通过设置的网址来访问服务器端的数据。管理人员与销售人员通过不同的网址与不同的密码来区别。管理人员所使用的主机用来承担服务器的角色是一个很好的选择。销售人员客户端:销售人员同样需要安装Chrome或其它主流浏览器,借助于局域网,访问与管理人员不同的网址进入系统。虽然网址不同,但共用了同一个数据库,借此达到了业务的完整实现。服务器端、管理人员端、销售人员端也可以在同一台主机上完成,小型商店可以靠一台计算机完成完整的业务。
3 详细设计
3.1 数据库设计分析
通过上面的需求分析,我们可以看到共有四类角色:管理人员、销售人员、商品、会员。同时,考虑到销售记录反映了一个多对多且重要的关系,因此共设计五张数据表来完成四类角色信息的存储,五张数据表的总体设计如表1。
3.2 客户端整体设计
系统有两类用户:商店管理人员、商店销售人员。
从逻辑上来看,管理人员需要完成对所有人的权限管理、对图书库存的完整了解、对销售人员工作情况的了解,同时还需要对商店现有会员状况保持了解。另一方面,销售员需要结算商品的功能,同时需要帮助顾客成为会员,以及给购买者提供图书的具体信息,此外,销售员应当可以查看自己的销售状况。可以看出,这些都是不便于再做分割归类的功能,由于两类用户都需要通过账户与密码进入到其具体的工作模块,因此,系统的总体结构如图1。
需要注意的是,虽然我们在这里都是通过登录界面登陆的,但由于两类人访问的是不同的网址,登录界面其实并非同一个文件。但从逻辑上讲,就如图2所示。
3.3 管理人员模块设计
管理人员需要统筹商店的全面发展,下面对四个功能页面做具体的说明。
3.3.1 权限管理界面
进入此界面时需要读取所有的系统管理员与销售人员,并将其大略信息显示在界面上。管理人员可以查看销售人员的详细情况,借助于AJAX技術,可以容易的将销售人员的详细业绩读取出来。管理人员可以在此处添加新的销售人员或新的管理员,也可以在此开除员工。权限的更改与密码的更改也在此界面中集成,需要注意的是,销售人员失去其身份后其业绩信息也不再保留。
3.3.2 库存信息界面
进入此界面时需要读取所有现有商品及其大略信息,并根据其分类显示在界面上。管理人员可在此添加新书信息,添加时需输入其名称、作者、出版社、放置位置、分类等信息,以便于商品的分类和查询。库存的添加和商品的下架也在此处,也可以查看商品的具体销量等信息。
3.3.3 销售状况界面
进入此界面时需要读取多类信息。通过sale表,根据交易发生的时间,读取全部的24小时内的交易,并按照时间顺序显示在页面中。同时根据时间读取出全部的24小时、1周、1个月的销售状况,按照商品号排出具体的销量,按照销量顺序,分别排出日榜单、周榜单、月榜单,并展示到界面上。本界面用于帮助管理者根据目前销售状况,为书店做出统筹性的规划。
3.3.4 会员信息界面
进入此界面时需要读取全部会员的信息,并将其等级和最后一次购买的时间展示在界面上。本界面可让管理者通过现有的会员数量和其购买状况判断书店的现有发展状况。同时,管理者可对不同等级的会员设置不同的折扣,以提高店铺的营业额。
3.4 销售人员模块设计
需要说明的是,销售人员与管理人员的代码分属两个文件。这样在一定层度上保证了安全性,也得以让源码之间互不干扰。下面我们分别对属于销售人员的三个界面做说明。
3.4.1 图书查询界面
进入本界面时无需事先读取数据。本部分用于方便顾客查找图书。顾客只需提供图书名称、作者、类别、出版社四者中任意一种或多种的模糊信息,即可进行查找。如果顾客提供多个信息,则给出所有结果的并集。这样销售人员可以具有导购的能力,有助于商店的发展。
3.4.2 销售列表界面
进入本界面时需要根据此时操作的销售人员账号读取其24小时内的销售状况,并按照时间顺序排列出来。本部分可以方便销售人员查看自己一天的销售情况。但要注意的是,此界面只能查看自身的业绩状况,而管理人员的销售状况界面可以查看全部销售人员的信息。
3.4.3 结算商品界面
本界面是最重要的界面,无需事先读取数据。
注册会员的功能集成在此界面,根据顾客提供的手机号或其他信息注册会员账号。会员默认等级为3级,在每一次使用此账号进行消费后,会自动重新计算其等级,最高为1级。等级越高,折扣越高。
结算商品是所有功能中最重要的,也是最复杂的。销售人员只需输入商品的编号和用户的购买数量即可完成结算。如果输入了会员号,则会自动计算折扣。结算功能会影响到sale表、goods表、salesman表、vip表,其大体执行流程如图2。
3.5 框架的使用
在编码时将销售人员与管理人员分别置于两个工程中,通过操作同一个数据库来完成业务,以保障安全性。也因此,两个工程得以使用不同的框架来进行具体的实现。下面对销售人员部分使用的框架进行说明:
销售人员部分使用ssm框架整合来完成整体的运转。使用mybatis,通过xml语句管理数据库的增删改查,使得销售记录的记载、会员信息的更改等大量数据库操作的函数得以简写。而使用springmve管理了每一個函数的跳转方向,使每一个功能函数都有明确的指向,代码更明确。而使用spring则代替了工厂类,为销售人员、会员等实体类以及其它Service层类建立对象,使得代码耦合性更低。通过使用框架整合,代码目的性也更明确,写起来也更加的简洁,后续的扩充也更方便,也更能反映出MVC的设计思想。
4 结束语
本篇论文通过完整的说明一个线下销售系统的需求分析、服务器设计、数据库设计、客户端设计等,展示了此类系统具有的现实意义和易行性。由于能力精力的限制,本文所实现的功能尚不足以完成全部的日常需要,但己给后续的扩充留下一个可行的基础。可以预见的是,通过计算机这种强大的工具,各类传统的繁琐细节都会被简洁的界面操作所逐渐取代,而更大的经济效益和价值也会渐渐体现出来。
参考文献
[1]吴大刚,肖荣荣.c/s结构与B/S结构的信息系统比较分析[J].情报科学,2003 (03): 89-91.
[2]常大俊,基于MySQL数据库结构设计[J].信息安全与技术,2015 (09): 57-59.
[3]张波,张福炎,基于JSP技术的Web应用程序的开发[J].计算机应用研究,2001(05):99-101.
[4]李洋.SSM框架在Web应用开发中的设计与实现[J],计算机技术与发展,2016 (12):190-194.
[5]邹红霆,基于SSM框架的Web系统研究与应用[J].湖南理工学院学报(自然科学版),2017 (01).